Merge staging-next into staging
This commit is contained in:
commit
8b504e632b
|
@ -0,0 +1,11 @@
|
|||
--[[
|
||||
Converts some HTML elements commonly used in Markdown to corresponding DocBook elements.
|
||||
]]
|
||||
|
||||
function RawInline(elem)
|
||||
if elem.format == 'html' and elem.text == '<kbd>' then
|
||||
return pandoc.RawInline('docbook', '<keycap>')
|
||||
elseif elem.format == 'html' and elem.text == '</kbd>' then
|
||||
return pandoc.RawInline('docbook', '</keycap>')
|
||||
end
|
||||
end
|
|
@ -22,6 +22,7 @@ with pkgs; stdenv.mkDerivation {
|
|||
docgen lists 'List manipulation functions'
|
||||
docgen debug 'Debugging functions'
|
||||
docgen options 'NixOS / nixpkgs option handling'
|
||||
docgen filesystem 'Filesystem functions'
|
||||
docgen sources 'Source filtering functions'
|
||||
'';
|
||||
}
|
||||
|
|
|
@ -26,5 +26,7 @@
|
|||
|
||||
<xi:include href="./library/generated/options.xml" />
|
||||
|
||||
<xi:include href="./library/generated/filesystem.xml" />
|
||||
|
||||
<xi:include href="./library/generated/sources.xml" />
|
||||
</section>
|
||||
|
|
|
@ -1,9 +1,23 @@
|
|||
# Functions for copying sources to the Nix store.
|
||||
{ lib }:
|
||||
{ # haskellPathsInDir : Path -> Map String Path
|
||||
# A map of all haskell packages defined in the given path,
|
||||
# identified by having a cabal file with the same name as the
|
||||
# directory itself.
|
||||
haskellPathsInDir = root:
|
||||
|
||||
let
|
||||
inherit (lib.strings)
|
||||
hasPrefix
|
||||
;
|
||||
in
|
||||
|
||||
{
|
||||
/*
|
||||
A map of all haskell packages defined in the given path,
|
||||
identified by having a cabal file with the same name as the
|
||||
directory itself.
|
||||
|
||||
Type: Path -> Map String Path
|
||||
*/
|
||||
haskellPathsInDir =
|
||||
# The directory within to search
|
||||
root:
|
||||
let # Files in the root
|
||||
root-files = builtins.attrNames (builtins.readDir root);
|
||||
# Files with their full paths
|
||||
|
@ -17,15 +31,18 @@
|
|||
builtins.pathExists (value + "/${name}.cabal")
|
||||
) root-files-with-paths;
|
||||
in builtins.listToAttrs cabal-subdirs;
|
||||
# locateDominatingFile : RegExp
|
||||
# -> Path
|
||||
# -> Nullable { path : Path;
|
||||
# matches : [ MatchResults ];
|
||||
# }
|
||||
# Find the first directory containing a file matching 'pattern'
|
||||
# upward from a given 'file'.
|
||||
# Returns 'null' if no directories contain a file matching 'pattern'.
|
||||
locateDominatingFile = pattern: file:
|
||||
/*
|
||||
Find the first directory containing a file matching 'pattern'
|
||||
upward from a given 'file'.
|
||||
Returns 'null' if no directories contain a file matching 'pattern'.
|
||||
|
||||
Type: RegExp -> Path -> Nullable { path : Path; matches : [ MatchResults ]; }
|
||||
*/
|
||||
locateDominatingFile =
|
||||
# The pattern to search for
|
||||
pattern:
|
||||
# The file to start searching upward from
|
||||
file:
|
||||
let go = path:
|
||||
let files = builtins.attrNames (builtins.readDir path);
|
||||
matches = builtins.filter (match: match != null)
|
||||
|
@ -44,10 +61,15 @@
|
|||
in go (if isDir then file else parent);
|
||||
|
||||
|
||||
# listFilesRecursive: Path -> [ Path ]
|
||||
#
|
||||
# Given a directory, return a flattened list of all files within it recursively.
|
||||
listFilesRecursive = dir: lib.flatten (lib.mapAttrsToList (name: type:
|
||||
/*
|
||||
Given a directory, return a flattened list of all files within it recursively.
|
||||
|
||||
Type: Path -> [ Path ]
|
||||
*/
|
||||
listFilesRecursive =
|
||||
# The path to recursively list
|
||||
dir:
|
||||
lib.flatten (lib.mapAttrsToList (name: type:
|
||||
if type == "directory" then
|
||||
lib.filesystem.listFilesRecursive (dir + "/${name}")
|
||||
else
|
||||
|
|
|
@ -63,7 +63,7 @@ luaepnf,,,,,,
|
|||
luaevent,,,,,,
|
||||
luaexpat,,,,1.4.1-1,,arobyn flosse
|
||||
luaffi,,,http://luarocks.org/dev,,,
|
||||
luafilesystem,,,,1.7.0-2,,flosse
|
||||
luafilesystem,,,,1.8.0-1,,flosse
|
||||
lualogging,,,,,,
|
||||
luaossl,,,,,5.1,
|
||||
luaposix,,,,34.1.1-1,,vyp lblasc
|
||||
|
|
|
|
@ -1,35 +1,135 @@
|
|||
<section xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="sec-booting-from-usb">
|
||||
<title>Booting from a USB Drive</title>
|
||||
<title>Booting from a USB flash drive</title>
|
||||
<para>
|
||||
For systems without CD drive, the NixOS live CD can be booted from a
|
||||
USB stick. You can use the <literal>dd</literal> utility to write
|
||||
the image: <literal>dd if=path-to-image of=/dev/sdX</literal>. Be
|
||||
careful about specifying the correct drive; you can use the
|
||||
<literal>lsblk</literal> command to get a list of block devices.
|
||||
The image has to be written verbatim to the USB flash drive for it
|
||||
to be bootable on UEFI and BIOS systems. Here are the recommended
|
||||
tools to do that.
|
||||
</para>
|
||||
<note>
|
||||
<title>On macOS</title>
|
||||
<section xml:id="sec-booting-from-usb-graphical">
|
||||
<title>Creating bootable USB flash drive with a graphical
|
||||
tool</title>
|
||||
<para>
|
||||
Etcher is a popular and user-friendly tool. It works on Linux,
|
||||
Windows and macOS.
|
||||
</para>
|
||||
<para>
|
||||
Download it from
|
||||
<link xlink:href="https://www.balena.io/etcher/">balena.io</link>,
|
||||
start the program, select the downloaded NixOS ISO, then select
|
||||
the USB flash drive and flash it.
|
||||
</para>
|
||||
<warning>
|
||||
<para>
|
||||
Etcher reports errors and usage statistics by default, which can
|
||||
be disabled in the settings.
|
||||
</para>
|
||||
</warning>
|
||||
<para>
|
||||
An alternative is
|
||||
<link xlink:href="https://bztsrc.gitlab.io/usbimager">USBImager</link>,
|
||||
which is very simple and does not connect to the internet.
|
||||
Download the version with write-only (wo) interface for your
|
||||
system. Start the program, select the image, select the USB flash
|
||||
drive and click <quote>Write</quote>.
|
||||
</para>
|
||||
</section>
|
||||
<section xml:id="sec-booting-from-usb-linux">
|
||||
<title>Creating bootable USB flash drive from a Terminal on
|
||||
Linux</title>
|
||||
<orderedlist numeration="arabic" spacing="compact">
|
||||
<listitem>
|
||||
<para>
|
||||
Plug in the USB flash drive.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Find the corresponding device with <literal>lsblk</literal>.
|
||||
You can distinguish them by their size.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Make sure all partitions on the device are properly unmounted.
|
||||
Replace <literal>sdX</literal> with your device (e.g.
|
||||
<literal>sdb</literal>).
|
||||
</para>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
<programlisting>
|
||||
$ diskutil list
|
||||
[..]
|
||||
/dev/diskN (external, physical):
|
||||
#: TYPE NAME SIZE IDENTIFIER
|
||||
[..]
|
||||
$ diskutil unmountDisk diskN
|
||||
Unmount of all volumes on diskN was successful
|
||||
$ sudo dd if=nix.iso of=/dev/rdiskN bs=1M
|
||||
sudo umount /dev/sdX*
|
||||
</programlisting>
|
||||
<orderedlist numeration="arabic" spacing="compact">
|
||||
<listitem override="4">
|
||||
<para>
|
||||
Then use the <literal>dd</literal> utility to write the image
|
||||
to the USB flash drive.
|
||||
</para>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
<programlisting>
|
||||
sudo dd if=<path-to-image> of=/dev/sdX bs=4M conv=fsync
|
||||
</programlisting>
|
||||
</section>
|
||||
<section xml:id="sec-booting-from-usb-macos">
|
||||
<title>Creating bootable USB flash drive from a Terminal on
|
||||
macOS</title>
|
||||
<orderedlist numeration="arabic" spacing="compact">
|
||||
<listitem>
|
||||
<para>
|
||||
Plug in the USB flash drive.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Find the corresponding device with
|
||||
<literal>diskutil list</literal>. You can distinguish them by
|
||||
their size.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Make sure all partitions on the device are properly unmounted.
|
||||
Replace <literal>diskX</literal> with your device (e.g.
|
||||
<literal>disk1</literal>).
|
||||
</para>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
<programlisting>
|
||||
diskutil unmountDisk diskX
|
||||
</programlisting>
|
||||
<orderedlist numeration="arabic" spacing="compact">
|
||||
<listitem override="4">
|
||||
<para>
|
||||
Then use the <literal>dd</literal> utility to write the image
|
||||
to the USB flash drive.
|
||||
</para>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
<programlisting>
|
||||
sudo dd if=<path-to-image> of=/dev/rdiskX bs=4m
|
||||
</programlisting>
|
||||
<para>
|
||||
Using the 'raw' <literal>rdiskN</literal> device instead of
|
||||
<literal>diskN</literal> completes in minutes instead of hours.
|
||||
After <literal>dd</literal> completes, a GUI dialog "The disk
|
||||
you inserted was not readable by this computer" will pop up,
|
||||
which can be ignored.
|
||||
</para>
|
||||
</note>
|
||||
<para>
|
||||
The <literal>dd</literal> utility will write the image verbatim to
|
||||
the drive, making it the recommended option for both UEFI and
|
||||
non-UEFI installations.
|
||||
</para>
|
||||
<note>
|
||||
<para>
|
||||
Using the 'raw' <literal>rdiskX</literal> device instead of
|
||||
<literal>diskX</literal> with dd completes in minutes instead of
|
||||
hours.
|
||||
</para>
|
||||
</note>
|
||||
<orderedlist numeration="arabic" spacing="compact">
|
||||
<listitem override="5">
|
||||
<para>
|
||||
Eject the disk when it is finished.
|
||||
</para>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
<programlisting>
|
||||
diskutil eject /dev/diskX
|
||||
</programlisting>
|
||||
</section>
|
||||
</section>
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -2,16 +2,15 @@
|
|||
<title>Obtaining NixOS</title>
|
||||
<para>
|
||||
NixOS ISO images can be downloaded from the
|
||||
<link xlink:href="https://nixos.org/nixos/download.html">NixOS
|
||||
download page</link>. There are a number of installation options. If
|
||||
you happen to have an optical drive and a spare CD, burning the
|
||||
image to CD and booting from that is probably the easiest option.
|
||||
Most people will need to prepare a USB stick to boot from.
|
||||
<xref linkend="sec-booting-from-usb" /> describes the preferred
|
||||
method to prepare a USB stick. A number of alternative methods are
|
||||
presented in the
|
||||
<link xlink:href="https://nixos.wiki/wiki/NixOS_Installation_Guide#Making_the_installation_media">NixOS
|
||||
Wiki</link>.
|
||||
<link xlink:href="https://nixos.org/download.html#nixos-iso">NixOS
|
||||
download page</link>. Follow the instructions in
|
||||
<xref linkend="sec-booting-from-usb" /> to create a bootable USB
|
||||
flash drive.
|
||||
</para>
|
||||
<para>
|
||||
If you have a very old system that can’t boot from USB, you can burn
|
||||
the image to an empty CD. NixOS might not work very well on such
|
||||
systems.
|
||||
</para>
|
||||
<para>
|
||||
As an alternative to installing NixOS yourself, you can get a
|
||||
|
@ -23,16 +22,16 @@
|
|||
Using virtual appliances in Open Virtualization Format (OVF)
|
||||
that can be imported into VirtualBox. These are available from
|
||||
the
|
||||
<link xlink:href="https://nixos.org/nixos/download.html">NixOS
|
||||
<link xlink:href="https://nixos.org/download.html#nixos-virtualbox">NixOS
|
||||
download page</link>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Using AMIs for Amazon’s EC2. To find one for your region and
|
||||
instance type, please refer to the
|
||||
<link xlink:href="https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/virtualisation/ec2-amis.nix">list
|
||||
of most recent AMIs</link>.
|
||||
Using AMIs for Amazon’s EC2. To find one for your region, please
|
||||
refer to the
|
||||
<link xlink:href="https://nixos.org/download.html#nixos-amazon">download
|
||||
page</link>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
|
|
|
@ -1,31 +1,72 @@
|
|||
# Booting from a USB Drive {#sec-booting-from-usb}
|
||||
# Booting from a USB flash drive {#sec-booting-from-usb}
|
||||
|
||||
For systems without CD drive, the NixOS live CD can be booted from a USB
|
||||
stick. You can use the `dd` utility to write the image:
|
||||
`dd if=path-to-image of=/dev/sdX`. Be careful about specifying the correct
|
||||
drive; you can use the `lsblk` command to get a list of block devices.
|
||||
The image has to be written verbatim to the USB flash drive for it to be
|
||||
bootable on UEFI and BIOS systems. Here are the recommended tools to do that.
|
||||
|
||||
::: {.note}
|
||||
::: {.title}
|
||||
On macOS
|
||||
## Creating bootable USB flash drive with a graphical tool {#sec-booting-from-usb-graphical}
|
||||
|
||||
Etcher is a popular and user-friendly tool. It works on Linux, Windows and macOS.
|
||||
|
||||
Download it from [balena.io](https://www.balena.io/etcher/), start the program,
|
||||
select the downloaded NixOS ISO, then select the USB flash drive and flash it.
|
||||
|
||||
::: {.warning}
|
||||
Etcher reports errors and usage statistics by default, which can be disabled in
|
||||
the settings.
|
||||
:::
|
||||
|
||||
```ShellSession
|
||||
$ diskutil list
|
||||
[..]
|
||||
/dev/diskN (external, physical):
|
||||
#: TYPE NAME SIZE IDENTIFIER
|
||||
[..]
|
||||
$ diskutil unmountDisk diskN
|
||||
Unmount of all volumes on diskN was successful
|
||||
$ sudo dd if=nix.iso of=/dev/rdiskN bs=1M
|
||||
```
|
||||
An alternative is [USBImager](https://bztsrc.gitlab.io/usbimager),
|
||||
which is very simple and does not connect to the internet. Download the version
|
||||
with write-only (wo) interface for your system. Start the program,
|
||||
select the image, select the USB flash drive and click "Write".
|
||||
|
||||
Using the \'raw\' `rdiskN` device instead of `diskN` completes in
|
||||
minutes instead of hours. After `dd` completes, a GUI dialog \"The disk
|
||||
you inserted was not readable by this computer\" will pop up, which can
|
||||
be ignored.
|
||||
:::
|
||||
## Creating bootable USB flash drive from a Terminal on Linux {#sec-booting-from-usb-linux}
|
||||
|
||||
The `dd` utility will write the image verbatim to the drive, making it
|
||||
the recommended option for both UEFI and non-UEFI installations.
|
||||
1. Plug in the USB flash drive.
|
||||
2. Find the corresponding device with `lsblk`. You can distinguish them by
|
||||
their size.
|
||||
3. Make sure all partitions on the device are properly unmounted. Replace `sdX`
|
||||
with your device (e.g. `sdb`).
|
||||
|
||||
```ShellSession
|
||||
sudo umount /dev/sdX*
|
||||
```
|
||||
|
||||
4. Then use the `dd` utility to write the image to the USB flash drive.
|
||||
|
||||
```ShellSession
|
||||
sudo dd if=<path-to-image> of=/dev/sdX bs=4M conv=fsync
|
||||
```
|
||||
|
||||
## Creating bootable USB flash drive from a Terminal on macOS {#sec-booting-from-usb-macos}
|
||||
|
||||
1. Plug in the USB flash drive.
|
||||
2. Find the corresponding device with `diskutil list`. You can distinguish them
|
||||
by their size.
|
||||
3. Make sure all partitions on the device are properly unmounted. Replace `diskX`
|
||||
with your device (e.g. `disk1`).
|
||||
|
||||
```ShellSession
|
||||
diskutil unmountDisk diskX
|
||||
```
|
||||
|
||||
4. Then use the `dd` utility to write the image to the USB flash drive.
|
||||
|
||||
```ShellSession
|
||||
sudo dd if=<path-to-image> of=/dev/rdiskX bs=4m
|
||||
```
|
||||
|
||||
After `dd` completes, a GUI dialog \"The disk
|
||||
you inserted was not readable by this computer\" will pop up, which can
|
||||
be ignored.
|
||||
|
||||
::: {.note}
|
||||
Using the \'raw\' `rdiskX` device instead of `diskX` with dd completes in
|
||||
minutes instead of hours.
|
||||
:::
|
||||
|
||||
5. Eject the disk when it is finished.
|
||||
|
||||
```ShellSession
|
||||
diskutil eject /dev/diskX
|
||||
```
|
||||
|
|
|
@ -1,30 +1,143 @@
|
|||
# Installing NixOS {#sec-installation}
|
||||
|
||||
## Booting the system {#sec-installation-booting}
|
||||
## Booting from the install medium {#sec-installation-booting}
|
||||
|
||||
To begin the installation, you have to boot your computer from the install drive.
|
||||
|
||||
1. Plug in the install drive. Then turn on or restart your computer.
|
||||
|
||||
2. Open the boot menu by pressing the appropriate key, which is usually shown
|
||||
on the display on early boot.
|
||||
Select the USB flash drive (the option usually contains the word "USB").
|
||||
If you choose the incorrect drive, your computer will likely continue to
|
||||
boot as normal. In that case restart your computer and pick a
|
||||
different drive.
|
||||
|
||||
::: {.note}
|
||||
The key to open the boot menu is different across computer brands and even
|
||||
models. It can be <kbd>F12</kbd>, but also <kbd>F1</kbd>,
|
||||
<kbd>F9</kbd>, <kbd>F10</kbd>, <kbd>Enter</kbd>, <kbd>Del</kbd>,
|
||||
<kbd>Esc</kbd> or another function key. If you are unsure and don't see
|
||||
it on the early boot screen, you can search online for your computers
|
||||
brand, model followed by "boot from usb".
|
||||
The computer might not even have that feature, so you have to go into the
|
||||
BIOS/UEFI settings to change the boot order. Again, search online for
|
||||
details about your specific computer model.
|
||||
|
||||
For Apple computers with Intel processors press and hold the <kbd>⌥</kbd>
|
||||
(Option or Alt) key until you see the boot menu. On Apple silicon press
|
||||
and hold the power button.
|
||||
:::
|
||||
|
||||
::: {.note}
|
||||
If your computer supports both BIOS and UEFI boot, choose the UEFI option.
|
||||
:::
|
||||
|
||||
::: {.note}
|
||||
If you use a CD for the installation, the computer will probably boot from
|
||||
it automatically. If not, choose the option containing the word "CD" from
|
||||
the boot menu.
|
||||
:::
|
||||
|
||||
3. Shortly after selecting the appropriate boot drive, you should be
|
||||
presented with a menu with different installer options. Leave the default
|
||||
and wait (or press <kbd>Enter</kbd> to speed up).
|
||||
|
||||
4. The graphical images will start their corresponding desktop environment
|
||||
and the graphical installer, which can take some time. The minimal images
|
||||
will boot to a command line. You have to follow the instructions in
|
||||
[](#sec-installation-manual) there.
|
||||
|
||||
## Graphical Installation {#sec-installation-graphical}
|
||||
|
||||
The graphical installer is recommended for desktop users and will guide you
|
||||
through the installation.
|
||||
|
||||
1. In the "Welcome" screen, you can select the language of the Installer and
|
||||
the installed system.
|
||||
|
||||
::: {.tip}
|
||||
Leaving the language as "American English" will make it easier to search for
|
||||
error messages in a search engine or to report an issue.
|
||||
:::
|
||||
|
||||
2. Next you should choose your location to have the timezone set correctly.
|
||||
You can actually click on the map!
|
||||
|
||||
::: {.note}
|
||||
The installer will use an online service to guess your location based on
|
||||
your public IP address.
|
||||
:::
|
||||
|
||||
3. Then you can select the keyboard layout. The default keyboard model should
|
||||
work well with most desktop keyboards. If you have a special keyboard or
|
||||
notebook, your model might be in the list. Select the language you are most
|
||||
comfortable typing in.
|
||||
|
||||
4. On the "Users" screen, you have to type in your display name, login name
|
||||
and password. You can also enable an option to automatically login to the
|
||||
desktop.
|
||||
|
||||
5. Then you have the option to choose a desktop environment. If you want to
|
||||
create a custom setup with a window manager, you can select "No desktop".
|
||||
|
||||
::: {.tip}
|
||||
If you don't have a favorite desktop and don't know which one to choose,
|
||||
you can stick to either GNOME or Plasma. They have a quite different
|
||||
design, so you should choose whichever you like better.
|
||||
They are both popular choices and well tested on NixOS.
|
||||
:::
|
||||
|
||||
6. You have the option to allow unfree software in the next screen.
|
||||
|
||||
7. The easiest option in the "Partitioning" screen is "Erase disk", which will
|
||||
delete all data from the selected disk and install the system on it.
|
||||
Also select "Swap (with Hibernation)" in the dropdown below it.
|
||||
You have the option to encrypt the whole disk with LUKS.
|
||||
|
||||
::: {.note}
|
||||
At the top left you see if the Installer was booted with BIOS or UEFI. If
|
||||
you know your system supports UEFI and it shows "BIOS", reboot with the
|
||||
correct option.
|
||||
:::
|
||||
|
||||
::: {.warning}
|
||||
Make sure you have selected the correct disk at the top and that no
|
||||
valuable data is still on the disk! It will be deleted when
|
||||
formatting the disk.
|
||||
:::
|
||||
|
||||
8. Check the choices you made in the "Summary" and click "Install".
|
||||
|
||||
::: {.note}
|
||||
The installation takes about 15 minutes. The time varies based on the
|
||||
selected desktop environment, internet connection speed and disk write speed.
|
||||
:::
|
||||
|
||||
9. When the install is complete, remove the USB flash drive and
|
||||
reboot into your new system!
|
||||
|
||||
## Manual Installation {#sec-installation-manual}
|
||||
|
||||
NixOS can be installed on BIOS or UEFI systems. The procedure for a UEFI
|
||||
installation is by and large the same as a BIOS installation. The
|
||||
differences are mentioned in the steps that follow.
|
||||
installation is broadly the same as for a BIOS installation. The differences
|
||||
are mentioned in the following steps.
|
||||
|
||||
The installation media can be burned to a CD, or now more commonly,
|
||||
"burned" to a USB drive (see [](#sec-booting-from-usb)).
|
||||
The NixOS manual is available by running `nixos-help` in the command line
|
||||
or from the application menu in the desktop environment.
|
||||
|
||||
The installation media contains a basic NixOS installation. When it's
|
||||
finished booting, it should have detected most of your hardware.
|
||||
|
||||
The NixOS manual is available by running `nixos-help`.
|
||||
To have access to the command line on the graphical images, open
|
||||
Terminal (GNOME) or Konsole (Plasma) from the application menu.
|
||||
|
||||
You are logged-in automatically as `nixos`. The `nixos` user account has
|
||||
an empty password so you can use `sudo` without a password:
|
||||
|
||||
```ShellSession
|
||||
$ sudo -i
|
||||
```
|
||||
|
||||
If you downloaded the graphical ISO image, you can run `systemctl
|
||||
start display-manager` to start the desktop environment. If you want
|
||||
to continue on the terminal, you can use `loadkeys` to switch to your
|
||||
preferred keyboard layout. (We even provide neo2 via `loadkeys de
|
||||
neo`!)
|
||||
You can use `loadkeys` to switch to your preferred keyboard layout.
|
||||
(We even provide neo2 via `loadkeys de neo`!)
|
||||
|
||||
If the text is too small to be legible, try `setfont ter-v32n` to
|
||||
increase the font size.
|
||||
|
@ -33,7 +146,8 @@ To install over a serial port connect with `115200n8` (e.g.
|
|||
`picocom -b 115200 /dev/ttyUSB0`). When the bootloader lists boot
|
||||
entries, select the serial console boot entry.
|
||||
|
||||
### Networking in the installer {#sec-installation-booting-networking}
|
||||
### Networking in the installer {#sec-installation-manual-networking}
|
||||
[]{#sec-installation-booting-networking} <!-- legacy anchor -->
|
||||
|
||||
The boot process should have brought up networking (check `ip
|
||||
a`). Networking is necessary for the installer, since it will
|
||||
|
@ -100,7 +214,8 @@ placed by mounting the image on a different machine). Alternatively you
|
|||
must set a password for either `root` or `nixos` with `passwd` to be
|
||||
able to login.
|
||||
|
||||
## Partitioning and formatting {#sec-installation-partitioning}
|
||||
### Partitioning and formatting {#sec-installation-manual-partitioning}
|
||||
[]{#sec-installation-partitioning} <!-- legacy anchor -->
|
||||
|
||||
The NixOS installer doesn't do any partitioning or formatting, so you
|
||||
need to do that yourself.
|
||||
|
@ -112,7 +227,8 @@ below use `parted`, but also provides `fdisk`, `gdisk`, `cfdisk`, and
|
|||
The recommended partition scheme differs depending if the computer uses
|
||||
*Legacy Boot* or *UEFI*.
|
||||
|
||||
### UEFI (GPT) {#sec-installation-partitioning-UEFI}
|
||||
#### UEFI (GPT) {#sec-installation-manual-partitioning-UEFI}
|
||||
[]{#sec-installation-partitioning-UEFI} <!-- legacy anchor -->
|
||||
|
||||
Here\'s an example partition scheme for UEFI, using `/dev/sda` as the
|
||||
device.
|
||||
|
@ -158,9 +274,10 @@ update /etc/fstab.
|
|||
```
|
||||
|
||||
Once complete, you can follow with
|
||||
[](#sec-installation-partitioning-formatting).
|
||||
[](#sec-installation-manual-partitioning-formatting).
|
||||
|
||||
### Legacy Boot (MBR) {#sec-installation-partitioning-MBR}
|
||||
#### Legacy Boot (MBR) {#sec-installation-manual-partitioning-MBR}
|
||||
[]{#sec-installation-partitioning-MBR} <!-- legacy anchor -->
|
||||
|
||||
Here\'s an example partition scheme for Legacy Boot, using `/dev/sda` as
|
||||
the device.
|
||||
|
@ -202,9 +319,10 @@ update /etc/fstab.
|
|||
:::
|
||||
|
||||
Once complete, you can follow with
|
||||
[](#sec-installation-partitioning-formatting).
|
||||
[](#sec-installation-manual-partitioning-formatting).
|
||||
|
||||
### Formatting {#sec-installation-partitioning-formatting}
|
||||
#### Formatting {#sec-installation-manual-partitioning-formatting}
|
||||
[]{#sec-installation-partitioning-formatting} <!-- legacy anchor -->
|
||||
|
||||
Use the following commands:
|
||||
|
||||
|
@ -239,7 +357,8 @@ Use the following commands:
|
|||
|
||||
- For creating software RAID devices, use `mdadm`.
|
||||
|
||||
## Installing {#sec-installation-installing}
|
||||
### Installing {#sec-installation-manual-installing}
|
||||
[]{#sec-installation-installing} <!-- legacy anchor -->
|
||||
|
||||
1. Mount the target file system on which NixOS should be installed on
|
||||
`/mnt`, e.g.
|
||||
|
@ -410,7 +529,8 @@ Use the following commands:
|
|||
You may also want to install some software. This will be covered in
|
||||
[](#sec-package-management).
|
||||
|
||||
## Installation summary {#sec-installation-summary}
|
||||
### Installation summary {#sec-installation-manual-summary}
|
||||
[]{#sec-installation-summary} <!-- legacy anchor -->
|
||||
|
||||
To summarise, [Example: Commands for Installing NixOS on `/dev/sda`](#ex-install-sequence)
|
||||
shows a typical sequence of commands for installing NixOS on an empty hard
|
||||
|
|
|
@ -1,24 +1,21 @@
|
|||
# Obtaining NixOS {#sec-obtaining}
|
||||
|
||||
NixOS ISO images can be downloaded from the [NixOS download
|
||||
page](https://nixos.org/nixos/download.html). There are a number of
|
||||
installation options. If you happen to have an optical drive and a spare
|
||||
CD, burning the image to CD and booting from that is probably the
|
||||
easiest option. Most people will need to prepare a USB stick to boot
|
||||
from. [](#sec-booting-from-usb) describes the preferred method to
|
||||
prepare a USB stick. A number of alternative methods are presented in
|
||||
the [NixOS Wiki](https://nixos.wiki/wiki/NixOS_Installation_Guide#Making_the_installation_media).
|
||||
page](https://nixos.org/download.html#nixos-iso). Follow the instructions in
|
||||
[](#sec-booting-from-usb) to create a bootable USB flash drive.
|
||||
|
||||
If you have a very old system that can't boot from USB, you can burn the image
|
||||
to an empty CD. NixOS might not work very well on such systems.
|
||||
|
||||
As an alternative to installing NixOS yourself, you can get a running
|
||||
NixOS system through several other means:
|
||||
|
||||
- Using virtual appliances in Open Virtualization Format (OVF) that
|
||||
can be imported into VirtualBox. These are available from the [NixOS
|
||||
download page](https://nixos.org/nixos/download.html).
|
||||
download page](https://nixos.org/download.html#nixos-virtualbox).
|
||||
|
||||
- Using AMIs for Amazon's EC2. To find one for your region and
|
||||
instance type, please refer to the [list of most recent
|
||||
AMIs](https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/virtualisation/ec2-amis.nix).
|
||||
- Using AMIs for Amazon's EC2. To find one for your region, please refer
|
||||
to the [download page](https://nixos.org/download.html#nixos-amazon).
|
||||
|
||||
- Using NixOps, the NixOS-based cloud deployment tool, which allows
|
||||
you to provision VirtualBox and EC2 NixOS instances from declarative
|
||||
|
|
|
@ -19,6 +19,7 @@ pandoc_flags=(
|
|||
"--lua-filter=$DIR/../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua"
|
||||
"--lua-filter=$DIR/../../../doc/build-aux/pandoc-filters/link-unix-man-references.lua"
|
||||
"--lua-filter=$DIR/../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua"
|
||||
"--lua-filter=$DIR/../../../doc/build-aux/pandoc-filters/docbook-writer/html-elements.lua"
|
||||
"--lua-filter=$DIR/../../../doc/build-aux/pandoc-filters/docbook-writer/labelless-link-is-xref.lua"
|
||||
-f "commonmark${pandoc_commonmark_enabled_extensions}+smart"
|
||||
-t docbook
|
||||
|
|
|
@ -852,7 +852,7 @@ in {
|
|||
};
|
||||
|
||||
contactPoints = mkOption {
|
||||
description = lib.mdDoc "List of contact points to import or update.";
|
||||
description = lib.mdDoc "List of contact points to import or update. Please note that sensitive data will end up in world-readable Nix store.";
|
||||
default = [];
|
||||
type = types.listOf (types.submodule {
|
||||
freeformType = provisioningSettingsFormat.type;
|
||||
|
@ -1158,17 +1158,23 @@ in {
|
|||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
warnings = flatten [
|
||||
warnings = let
|
||||
usesFileProvider = opt: defaultValue: builtins.match "^${defaultValue}$|^\\$__file\\{.*}$" opt != null;
|
||||
in flatten [
|
||||
(optional (
|
||||
cfg.settings.database.password != "" ||
|
||||
cfg.settings.security.admin_password != "admin"
|
||||
! usesFileProvider cfg.settings.database.password "" ||
|
||||
! usesFileProvider cfg.settings.security.admin_password "admin"
|
||||
) "Grafana passwords will be stored as plaintext in the Nix store! Use file provider instead.")
|
||||
(optional (
|
||||
let
|
||||
checkOpts = opt: any (x: x.password != null || x.basicAuthPassword != null || x.secureJsonData != null) opt;
|
||||
datasourcesUsed = if (cfg.provision.datasources.settings == null) then [] else cfg.provision.datasources.settings.datasources;
|
||||
in if (builtins.isList cfg.provision.datasources) then checkOpts cfg.provision.datasources else checkOpts datasourcesUsed
|
||||
) "Datasource passwords will be stored as plaintext in the Nix store! Use file provider instead.")
|
||||
) ''
|
||||
Datasource passwords will be stored as plaintext in the Nix store!
|
||||
It is not possible to use file provider in provisioning; please provision
|
||||
datasources via `services.grafana.provision.datasources.path` instead.
|
||||
'')
|
||||
(optional (
|
||||
any (x: x.secure_settings != null) cfg.provision.notifiers
|
||||
) "Notifier secure settings will be stored as plaintext in the Nix store! Use file provider instead.")
|
||||
|
|
|
@ -475,7 +475,6 @@ in {
|
|||
} // cfgService;
|
||||
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
};
|
||||
|
||||
systemd.services.mastodon-init-db = lib.mkIf cfg.automaticMigrations {
|
||||
|
@ -500,16 +499,21 @@ in {
|
|||
# System Call Filtering
|
||||
SystemCallFilter = [ ("~" + lib.concatStringsSep " " (systemCallsList ++ [ "@resources" ])) "@chown" "pipe" "pipe2" ];
|
||||
} // cfgService;
|
||||
after = [ "mastodon-init-dirs.service" "network.target" ] ++ (if databaseActuallyCreateLocally then [ "postgresql.service" ] else []);
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "network.target" "mastodon-init-dirs.service" ]
|
||||
++ lib.optional databaseActuallyCreateLocally "postgresql.service";
|
||||
requires = [ "mastodon-init-dirs.service" ]
|
||||
++ lib.optional databaseActuallyCreateLocally "postgresql.service";
|
||||
};
|
||||
|
||||
systemd.services.mastodon-streaming = {
|
||||
after = [ "network.target" ]
|
||||
++ (if databaseActuallyCreateLocally then [ "postgresql.service" ] else [])
|
||||
++ (if cfg.automaticMigrations then [ "mastodon-init-db.service" ] else [ "mastodon-init-dirs.service" ]);
|
||||
description = "Mastodon streaming";
|
||||
after = [ "network.target" "mastodon-init-dirs.service" ]
|
||||
++ lib.optional databaseActuallyCreateLocally "postgresql.service"
|
||||
++ lib.optional cfg.automaticMigrations "mastodon-init-db.service";
|
||||
requires = [ "mastodon-init-dirs.service" ]
|
||||
++ lib.optional databaseActuallyCreateLocally "postgresql.service"
|
||||
++ lib.optional cfg.automaticMigrations "mastodon-init-db.service";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
description = "Mastodon streaming";
|
||||
environment = env // (if cfg.enableUnixSocket
|
||||
then { SOCKET = "/run/mastodon-streaming/streaming.socket"; }
|
||||
else { PORT = toString(cfg.streamingPort); }
|
||||
|
@ -529,11 +533,14 @@ in {
|
|||
};
|
||||
|
||||
systemd.services.mastodon-web = {
|
||||
after = [ "network.target" ]
|
||||
++ (if databaseActuallyCreateLocally then [ "postgresql.service" ] else [])
|
||||
++ (if cfg.automaticMigrations then [ "mastodon-init-db.service" ] else [ "mastodon-init-dirs.service" ]);
|
||||
description = "Mastodon web";
|
||||
after = [ "network.target" "mastodon-init-dirs.service" ]
|
||||
++ lib.optional databaseActuallyCreateLocally "postgresql.service"
|
||||
++ lib.optional cfg.automaticMigrations "mastodon-init-db.service";
|
||||
requires = [ "mastodon-init-dirs.service" ]
|
||||
++ lib.optional databaseActuallyCreateLocally "postgresql.service"
|
||||
++ lib.optional cfg.automaticMigrations "mastodon-init-db.service";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
description = "Mastodon web";
|
||||
environment = env // (if cfg.enableUnixSocket
|
||||
then { SOCKET = "/run/mastodon-web/web.socket"; }
|
||||
else { PORT = toString(cfg.webPort); }
|
||||
|
@ -554,11 +561,14 @@ in {
|
|||
};
|
||||
|
||||
systemd.services.mastodon-sidekiq = {
|
||||
after = [ "network.target" ]
|
||||
++ (if databaseActuallyCreateLocally then [ "postgresql.service" ] else [])
|
||||
++ (if cfg.automaticMigrations then [ "mastodon-init-db.service" ] else [ "mastodon-init-dirs.service" ]);
|
||||
description = "Mastodon sidekiq";
|
||||
after = [ "network.target" "mastodon-init-dirs.service" ]
|
||||
++ lib.optional databaseActuallyCreateLocally "postgresql.service"
|
||||
++ lib.optional cfg.automaticMigrations "mastodon-init-db.service";
|
||||
requires = [ "mastodon-init-dirs.service" ]
|
||||
++ lib.optional databaseActuallyCreateLocally "postgresql.service"
|
||||
++ lib.optional cfg.automaticMigrations "mastodon-init-db.service";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
description = "Mastodon sidekiq";
|
||||
environment = env // {
|
||||
PORT = toString(cfg.sidekiqPort);
|
||||
DB_POOL = toString cfg.sidekiqThreads;
|
||||
|
|
|
@ -50,7 +50,7 @@ let
|
|||
|
||||
kafka.wait_until_succeeds(
|
||||
"${kafkaPackage}/bin/kafka-topics.sh --create "
|
||||
+ "--zookeeper zookeeper1:2181 --partitions 1 "
|
||||
+ "--bootstrap-server localhost:9092 --partitions 1 "
|
||||
+ "--replication-factor 1 --topic testtopic"
|
||||
)
|
||||
kafka.succeed(
|
||||
|
@ -58,19 +58,12 @@ let
|
|||
+ "${kafkaPackage}/bin/kafka-console-producer.sh "
|
||||
+ "--broker-list localhost:9092 --topic testtopic"
|
||||
)
|
||||
'' + (if name == "kafka_0_9" then ''
|
||||
assert "test 1" in kafka.succeed(
|
||||
"${kafkaPackage}/bin/kafka-console-consumer.sh "
|
||||
+ "--zookeeper zookeeper1:2181 --topic testtopic "
|
||||
+ "--from-beginning --max-messages 1"
|
||||
)
|
||||
'' else ''
|
||||
assert "test 1" in kafka.succeed(
|
||||
"${kafkaPackage}/bin/kafka-console-consumer.sh "
|
||||
+ "--bootstrap-server localhost:9092 --topic testtopic "
|
||||
+ "--from-beginning --max-messages 1"
|
||||
)
|
||||
'');
|
||||
'';
|
||||
}) { inherit system; });
|
||||
|
||||
in with pkgs; {
|
||||
|
|
|
@ -14,15 +14,18 @@ import ./make-test-python.nix ({ pkgs, ... }: {
|
|||
patches = oa.patches or [] ++ [
|
||||
# change the prefix from /usr/bin to /run to find nix processes
|
||||
../../pkgs/tools/security/tracee/test-EventFilters-prefix-nix-friendly.patch
|
||||
# skip magic_write test that currently fails
|
||||
../../pkgs/tools/security/tracee/test-EventFilters-magic_write-skip.patch
|
||||
];
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
# just build the static lib we need for the go test binary
|
||||
make $makeFlags ''${enableParallelBuilding:+-j$NIX_BUILD_CORES -l$NIX_BUILD_CORES} bpf-core ./dist/btfhub ./dist/libbpf/libbpf.a
|
||||
make $makeFlags ''${enableParallelBuilding:+-j$NIX_BUILD_CORES -l$NIX_BUILD_CORES} bpf-core ./dist/btfhub
|
||||
|
||||
# remove the /usr/bin prefix to work with the patch above
|
||||
substituteInPlace tests/integration/integration_test.go \
|
||||
--replace "/usr/bin/ls" "ls"
|
||||
|
||||
# then compile the tests to be ran later
|
||||
CGO_CFLAGS="-I$PWD/dist/libbpf" CGO_LDFLAGS="-lelf -lz $PWD/dist/libbpf/libbpf.a" go test -tags core,ebpf,integration -p 1 -c -o $GOPATH/tracee-integration ./tests/integration/...
|
||||
CGO_LDFLAGS="$(pkg-config --libs libbpf)" go test -tags core,ebpf,integration -p 1 -c -o $GOPATH/tracee-integration ./tests/integration/...
|
||||
runHook postBuild
|
||||
'';
|
||||
doCheck = false;
|
||||
|
|
|
@ -8,9 +8,10 @@
|
|||
, capstone
|
||||
, jansson
|
||||
, libunistring
|
||||
, wxGTK31
|
||||
, wxGTK32
|
||||
, lua53Packages
|
||||
, perlPackages
|
||||
, gtk3
|
||||
, Carbon
|
||||
, Cocoa
|
||||
, IOKit
|
||||
|
@ -18,21 +19,22 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "rehex";
|
||||
version = "0.5.3";
|
||||
version = "0.5.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "solemnwarning";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-VBHNrOVIz7UM9tY1V7Ykwt4Cv0fY++8gXc2og4sLDk8=";
|
||||
hash = "sha256-UgwCfy2ssaPuSWeN2SXHBDXv/uLdrDoGr/Q9wXiuCnc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config which zip ]
|
||||
++ lib.optionals stdenv.isDarwin [ libicns ];
|
||||
|
||||
buildInputs = [ capstone jansson libunistring wxGTK31 ]
|
||||
buildInputs = [ capstone jansson libunistring wxGTK32 ]
|
||||
++ (with lua53Packages; [ lua busted ])
|
||||
++ (with perlPackages; [ perl TemplateToolkit ])
|
||||
++ lib.optionals stdenv.isLinux [ gtk3 ]
|
||||
++ lib.optionals stdenv.isDarwin [ Carbon Cocoa IOKit ];
|
||||
|
||||
makeFlags = [ "prefix=${placeholder "out"}" ]
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -459,6 +459,7 @@ https://github.com/ojroques/nvim-bufdel/,,
|
|||
https://github.com/roxma/nvim-cm-racer/,,
|
||||
https://github.com/hrsh7th/nvim-cmp/,,
|
||||
https://github.com/weilbith/nvim-code-action-menu/,,
|
||||
https://github.com/noib3/nvim-cokeline/,HEAD,
|
||||
https://github.com/nvchad/nvim-colorizer.lua/,,
|
||||
https://github.com/terrortylor/nvim-comment/,,
|
||||
https://github.com/hrsh7th/nvim-compe/,,
|
||||
|
@ -496,6 +497,7 @@ https://github.com/yamatsum/nvim-nonicons/,,
|
|||
https://github.com/rcarriga/nvim-notify/,,
|
||||
https://github.com/gennaro-tedesco/nvim-peekup/,,
|
||||
https://github.com/olrtg/nvim-rename-state/,HEAD,
|
||||
https://github.com/petertriho/nvim-scrollbar/,HEAD,
|
||||
https://github.com/dstein64/nvim-scrollview/,,
|
||||
https://github.com/dcampos/nvim-snippy/,HEAD,
|
||||
https://github.com/ishan9299/nvim-solarized-lua/,,
|
||||
|
@ -622,6 +624,7 @@ https://github.com/keith/swift.vim/,,
|
|||
https://github.com/AndrewRadev/switch.vim/,,
|
||||
https://github.com/simrat39/symbols-outline.nvim/,,
|
||||
https://github.com/vim-syntastic/syntastic/,,
|
||||
https://github.com/nanozuki/tabby.nvim/,HEAD,
|
||||
https://github.com/kdheepak/tabline.nvim/,,
|
||||
https://github.com/vim-scripts/tabmerge/,,
|
||||
https://github.com/codota/tabnine-vim/,,
|
||||
|
@ -740,6 +743,7 @@ https://github.com/gioele/vim-autoswap/,,
|
|||
https://github.com/bazelbuild/vim-bazel/,,
|
||||
https://github.com/moll/vim-bbye/,,
|
||||
https://github.com/nathangrigg/vim-beancount/,,
|
||||
https://github.com/sheoak/vim-bepoptimist/,HEAD,
|
||||
https://github.com/ntpeters/vim-better-whitespace/,,
|
||||
https://github.com/MattesGroeger/vim-bookmarks/,,
|
||||
https://github.com/gyim/vim-boxdraw/,,
|
||||
|
|
|
@ -2178,8 +2178,8 @@ let
|
|||
mktplcRef = {
|
||||
name = "metals";
|
||||
publisher = "scalameta";
|
||||
version = "1.12.18";
|
||||
sha256 = "104h3qfdn0y4138g3mdw1209qqh3mj3jsdsbzpnw2plk1cmr3nx5";
|
||||
version = "1.20.0";
|
||||
sha256 = "3EjXzSMBIim13dRP1fBmbV/OtLmBjvcmjDXwYoeGfLA=";
|
||||
};
|
||||
meta = {
|
||||
license = lib.licenses.asl20;
|
||||
|
|
|
@ -9,10 +9,10 @@
|
|||
|
||||
let
|
||||
# Keep these separate so the update script can regex them
|
||||
rpcs3GitVersion = "14289-0da81d22d";
|
||||
rpcs3Version = "0.0.24-14289-0da81d22d";
|
||||
rpcs3Revision = "0da81d22d340dca1ac098a9de5274641bdc77869";
|
||||
rpcs3Sha256 = "0qblfsdyngj8bb7g49am0q0mq5llwx3g4x4gi6h0jynk0d9j0ir0";
|
||||
rpcs3GitVersion = "14337-5210df688";
|
||||
rpcs3Version = "0.0.24-14337-5210df688";
|
||||
rpcs3Revision = "5210df688262ec7fd8c21230d30e568d98724c8f";
|
||||
rpcs3Sha256 = "1m0j53xl6g01s27bi2p9j23m724gq7a3hss7kqhc239a5m9akqdg";
|
||||
|
||||
ittapi = fetchFromGitHub {
|
||||
owner = "intel";
|
||||
|
|
|
@ -29,13 +29,13 @@
|
|||
|
||||
buildDotnetModule rec {
|
||||
pname = "ryujinx";
|
||||
version = "1.1.257"; # Based off of the official github actions builds: https://github.com/Ryujinx/Ryujinx/actions/workflows/release.yml
|
||||
version = "1.1.327"; # Based off of the official github actions builds: https://github.com/Ryujinx/Ryujinx/actions/workflows/release.yml
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Ryujinx";
|
||||
repo = "Ryujinx";
|
||||
rev = "81f1a4dc3161882b0385c9d4752fbba84b9eca96";
|
||||
sha256 = "1p4c8k8pc47hl32bml050fvxyhdjcd002xx60rwvzlgvdgw6b3xq";
|
||||
rev = "9719b6a1129c017d96532ff026e2bb933c0b2d0b";
|
||||
sha256 = "1vm1zwjm02jp64gjcfn923lxc4hqwgw44w9rspjy97q2z6r9vwjh";
|
||||
};
|
||||
|
||||
nugetDeps = ./deps.nix;
|
||||
|
|
2
pkgs/applications/emulators/ryujinx/deps.nix
generated
2
pkgs/applications/emulators/ryujinx/deps.nix
generated
|
@ -159,7 +159,7 @@
|
|||
(fetchNuGet { pname = "SkiaSharp.NativeAssets.WebAssembly"; version = "2.88.1-preview.1"; sha256 = "0mwj2yl4gn40lry03yqkj7sbi1drmm672dv88481sgah4c21lzrq"; })
|
||||
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.0"; sha256 = "135ni4rba4wy4wyzy9ip11f3dwb1ipn38z9ps1p9xhw8jc06y5vp"; })
|
||||
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.1-preview.1"; sha256 = "1k50abd147pif9z9lkckbbk91ga1vv6k4skjz2n7wpll6fn0fvlv"; })
|
||||
(fetchNuGet { pname = "SPB"; version = "0.0.4-build24"; sha256 = "13wfjx5n540mlxlvys39g2rajrqbycdkyci2pcp3wygkqn4d87hm"; })
|
||||
(fetchNuGet { pname = "SPB"; version = "0.0.4-build27"; sha256 = "16i10lp4w7gi5rzjs9v9vns858n735ixcb83kl2qqq9qwyrnv8mw"; })
|
||||
(fetchNuGet { pname = "Svg.Custom"; version = "0.5.14"; sha256 = "1wjghs2n5hk7zszzk2p2a8m6ga2gc8sfd5mdqi15sbfkmwg2nbw7"; })
|
||||
(fetchNuGet { pname = "Svg.Model"; version = "0.5.14"; sha256 = "1xilk95bmnsl93sbr7pah0jrjrnccf1ikcn8s7rkm0yjkj382hc8"; })
|
||||
(fetchNuGet { pname = "Svg.Skia"; version = "0.5.14"; sha256 = "02wv040wi8ijw9mwg3c84f8bfyfv9n99ji8q1v2bs11b463zsyd1"; })
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "limesctl";
|
||||
version = "3.0.2";
|
||||
version = "3.0.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sapcc";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-+KOtGf+WgI2PhfFJnNyx5ycekRmfbqjSqvWOEhG65Oo=";
|
||||
sha256 = "sha256-2eB+VpMrhzs0Dg+X1sf7TVW7uK/URETUuWO82jQl57k=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-LzLUz6diWva2HaxlhEGElbwUvUhCR0Tjsk/G/n5N3+k=";
|
||||
vendorSha256 = "sha256-VKxwdlyQUYmxubl4Y2uKvekuHd62GcGaoPeUBC+lcJU=";
|
||||
|
||||
subPackages = [ "." ];
|
||||
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
{ stdenv, lib
|
||||
{ stdenv
|
||||
, lib
|
||||
, alsa-utils
|
||||
, at-spi2-core
|
||||
, cmake
|
||||
, curl
|
||||
, dbus
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, flac
|
||||
, gtk3
|
||||
, jasper
|
||||
|
@ -26,6 +28,7 @@
|
|||
, libxkbcommon
|
||||
, lsb-release
|
||||
, lz4
|
||||
, makeWrapper
|
||||
, pcre
|
||||
, pkg-config
|
||||
, portaudio
|
||||
|
@ -33,7 +36,7 @@
|
|||
, tinyxml
|
||||
, udev
|
||||
, util-linux
|
||||
, wxGTK31-gtk3
|
||||
, wxGTK32
|
||||
, xorg
|
||||
}:
|
||||
|
||||
|
@ -48,9 +51,32 @@ stdenv.mkDerivation rec {
|
|||
hash = "sha256-sNZYf/2gtjRrrGPuazVnKTgcuIQpKPazhexqlK21T4g=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake lsb-release pkg-config ];
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
url = "https://github.com/OpenCPN/OpenCPN/commit/30fa16850ba97d3df0622273947e3e3975b8e6c0.patch";
|
||||
sha256 = "sha256-Sb4FE9QJA5kMJi52/x1Az6rMTS3WSURPx4QAhcv2j9E=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = lib.optionalString stdenv.isDarwin ''
|
||||
substituteInPlace cmake/TargetSetup.cmake \
|
||||
--replace '"sw_vers" "-productVersion"' '"echo" "1"'
|
||||
sed -i '/fixup_bundle/d' CMakeLists.txt
|
||||
'' + lib.optionalString (stdenv.isDarwin && stdenv.isx86_64) ''
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace 'DARWIN_VERSION LESS 16' 'TRUE'
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
] ++ lib.optionals stdenv.isLinux [
|
||||
lsb-release
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
alsa-utils
|
||||
at-spi2-core
|
||||
curl
|
||||
dbus
|
||||
|
@ -65,8 +91,6 @@ stdenv.mkDerivation rec {
|
|||
libexif
|
||||
libogg
|
||||
libopus
|
||||
libselinux
|
||||
libsepol
|
||||
libsndfile
|
||||
libthai
|
||||
libunarr
|
||||
|
@ -78,23 +102,36 @@ stdenv.mkDerivation rec {
|
|||
portaudio
|
||||
sqlite
|
||||
tinyxml
|
||||
wxGTK32
|
||||
] ++ lib.optionals stdenv.isLinux [
|
||||
alsa-utils
|
||||
libselinux
|
||||
libsepol
|
||||
udev
|
||||
util-linux
|
||||
wxGTK31-gtk3
|
||||
xorg.libXdmcp
|
||||
xorg.libXtst
|
||||
];
|
||||
|
||||
|
||||
cmakeFlags = [ "-DOCPN_BUNDLE_DOCS=true" ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = lib.optionals (!stdenv.hostPlatform.isx86) [
|
||||
"-DSQUISH_USE_SSE=0"
|
||||
];
|
||||
|
||||
postInstall = lib.optionals stdenv.isDarwin ''
|
||||
mkdir -p $out/Applications
|
||||
mv $out/bin/OpenCPN.app $out/Applications
|
||||
makeWrapper $out/Applications/OpenCPN.app/Contents/MacOS/OpenCPN $out/bin/opencpn
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "A concise ChartPlotter/Navigator";
|
||||
maintainers = with maintainers; [ kragniz lovesegfault ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.unix;
|
||||
license = licenses.gpl2Plus;
|
||||
homepage = "https://opencpn.org/";
|
||||
};
|
||||
}
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -3,10 +3,10 @@
|
|||
rec {
|
||||
firefox = buildMozillaMach rec {
|
||||
pname = "firefox";
|
||||
version = "106.0.1";
|
||||
version = "106.0.2";
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
|
||||
sha512 = "15f5a65a69e11dd0c463b358cafb5ad0f31db93619b9ec3f89e8c5e14d4d319d9423fe4dcd0dbbcbedc1ad444dcbd8e5e30e483220277f5b550bff6124b66519";
|
||||
sha512 = "2aad75c05c3398c19842be46dcde275581344b09f0c65b51a630cef201545996ee00f8020f52a0d7b6416d9ad52cbd5c71b8f1cdf47cd18e4abf1ba21f7cdb93";
|
||||
};
|
||||
|
||||
# This patch could be applied anywhere (just rebuild, no effect)
|
||||
|
|
|
@ -87,7 +87,7 @@ let
|
|||
fteLibPath = makeLibraryPath [ stdenv.cc.cc gmp ];
|
||||
|
||||
# Upstream source
|
||||
version = "11.5.4";
|
||||
version = "11.5.5";
|
||||
|
||||
lang = "en-US";
|
||||
|
||||
|
@ -99,7 +99,7 @@ let
|
|||
"https://tor.eff.org/dist/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz"
|
||||
"https://tor.calyxinstitute.org/dist/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz"
|
||||
];
|
||||
sha256 = "sha256-23P8Ew0asOptDYVJ0xA+ATOOT92nz/I2F2+CsAejfKo=";
|
||||
sha256 = "sha256-AOt0PFot6Qh9voqvi5bagW0HLk2kP8b6A2c8Jdv5vkQ=";
|
||||
};
|
||||
|
||||
i686-linux = fetchurl {
|
||||
|
@ -109,7 +109,7 @@ let
|
|||
"https://tor.eff.org/dist/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz"
|
||||
"https://tor.calyxinstitute.org/dist/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz"
|
||||
];
|
||||
sha256 = "sha256-ye4qq+zH1AlDItP8lKfA9YIJ7AMg1Roc4itpr0kWNtY=";
|
||||
sha256 = "sha256-MQrJgdAsNvG+WCx4eeb2UHZp/0LoOIhZZQUKESNIGZY=";
|
||||
};
|
||||
};
|
||||
in
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "kyverno";
|
||||
version = "1.8.0";
|
||||
version = "1.8.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kyverno";
|
||||
repo = "kyverno";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-VJhn3z/utbcZdJjmVzsjyqPfpKMmDXSKUcoALSmawqs=";
|
||||
sha256 = "sha256-pwT+fzFzJBkQkWmeHlqbTVSmmh7p3h7M4p5Wrrq+vJM=";
|
||||
};
|
||||
|
||||
ldflags = [
|
||||
|
@ -18,7 +18,7 @@ buildGoModule rec {
|
|||
"-X github.com/kyverno/kyverno/pkg/version.BuildTime=1970-01-01_00:00:00"
|
||||
];
|
||||
|
||||
vendorSha256 = "sha256-8Sk36IFk3tL/wqDnKJw/K1MtKBZuVRRFkyMl4b/XwDI=";
|
||||
vendorSha256 = "sha256-QE2OWymT/ke/5+f3Sw5MBadorcn/vXJXvwOaFNqhxWQ=";
|
||||
|
||||
subPackages = [ "cmd/cli/kubectl-kyverno" ];
|
||||
|
||||
|
|
|
@ -10,16 +10,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "werf";
|
||||
version = "1.2.180";
|
||||
version = "1.2.184";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "werf";
|
||||
repo = "werf";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-6I1Elq5tA7Vh+FaPYNVfEynTbw35WM/UuruqArGhsz4=";
|
||||
hash = "sha256-u3Mf7a+IGLWYvAt/Db/BwvtGc66SnYz5Qx2BkCCLKPg=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-rdrIJ1knarb7tEXl4BxYckHdX5oS2yvfcuRAI16ThU4=";
|
||||
vendorHash = "sha256-T9xGLQcnO9xyRVNX3xCwsOOXWvBbhhw9dH8gW7aBUjE=";
|
||||
|
||||
proxyVendor = true;
|
||||
|
||||
|
@ -36,16 +36,18 @@ buildGoModule rec {
|
|||
"-s"
|
||||
"-w"
|
||||
"-X github.com/werf/werf/pkg/werf.Version=${src.rev}"
|
||||
] ++ lib.optionals stdenv.isLinux [
|
||||
"-extldflags '-static'"
|
||||
] ++ lib.optionals (CGO_ENABLED == 1) [
|
||||
"-extldflags=-static"
|
||||
"-linkmode external"
|
||||
];
|
||||
|
||||
tags = [
|
||||
"containers_image_openpgp"
|
||||
"dfrunmount"
|
||||
"dfrunnetwork"
|
||||
"dfrunsecurity"
|
||||
"dfssh"
|
||||
] ++ lib.optionals stdenv.isLinux [
|
||||
] ++ lib.optionals (CGO_ENABLED == 1) [
|
||||
"exclude_graphdriver_devicemapper"
|
||||
"netgo"
|
||||
"no_devmapper"
|
||||
|
|
|
@ -271,11 +271,11 @@ stdenv.mkDerivation rec {
|
|||
# order to build, see https://github.com/qradiolink/qradiolink/issues/67
|
||||
++ lib.optionals (hasFeature "gr-vocoder") [
|
||||
"-DLIBCODEC2_FOUND=TRUE"
|
||||
"-DLIBCODEC2_LIBRARIES=${codec2}/lib/libcodec2.so"
|
||||
"-DLIBCODEC2_LIBRARIES=${codec2}/lib/libcodec2${stdenv.hostPlatform.extensions.sharedLibrary}"
|
||||
"-DLIBCODEC2_INCLUDE_DIRS=${codec2}/include"
|
||||
"-DLIBCODEC2_HAS_FREEDV_API=ON"
|
||||
"-DLIBGSM_FOUND=TRUE"
|
||||
"-DLIBGSM_LIBRARIES=${gsm}/lib/libgsm.so"
|
||||
"-DLIBGSM_LIBRARIES=${gsm}/lib/libgsm${stdenv.hostPlatform.extensions.sharedLibrary}"
|
||||
"-DLIBGSM_INCLUDE_DIRS=${gsm}/include/gsm"
|
||||
]
|
||||
++ lib.optionals (hasFeature "volk" && volk != null) [
|
||||
|
|
|
@ -296,7 +296,7 @@ stdenv.mkDerivation rec {
|
|||
# This is the only python reference worth removing, if needed.
|
||||
+ lib.optionalString (!hasFeature "python-support") ''
|
||||
${removeReferencesTo}/bin/remove-references-to -t ${python} $out/lib/cmake/gnuradio/GnuradioConfig.cmake
|
||||
${removeReferencesTo}/bin/remove-references-to -t ${python} $(readlink -f $out/lib/libgnuradio-runtime.so)
|
||||
${removeReferencesTo}/bin/remove-references-to -t ${python} $(readlink -f $out/lib/libgnuradio-runtime${stdenv.hostPlatform.extensions.sharedLibrary})
|
||||
${removeReferencesTo}/bin/remove-references-to -t ${python.pkgs.pybind11} $out/lib/cmake/gnuradio/gnuradio-runtimeTargets.cmake
|
||||
''
|
||||
;
|
||||
|
|
|
@ -317,7 +317,7 @@ stdenv.mkDerivation rec {
|
|||
# This is the only python reference worth removing, if needed.
|
||||
+ lib.optionalString (!hasFeature "python-support") ''
|
||||
${removeReferencesTo}/bin/remove-references-to -t ${python} $out/lib/cmake/gnuradio/GnuradioConfig.cmake
|
||||
${removeReferencesTo}/bin/remove-references-to -t ${python} $(readlink -f $out/lib/libgnuradio-runtime.so)
|
||||
${removeReferencesTo}/bin/remove-references-to -t ${python} $(readlink -f $out/lib/libgnuradio-runtime${stdenv.hostPlatform.extensions.sharedLibrary})
|
||||
${removeReferencesTo}/bin/remove-references-to -t ${python.pkgs.pybind11} $out/lib/cmake/gnuradio/gnuradio-runtimeTargets.cmake
|
||||
''
|
||||
;
|
||||
|
|
|
@ -84,7 +84,11 @@ rec {
|
|||
postInstall = ""
|
||||
# Gcc references
|
||||
+ lib.optionalString (hasFeature "gnuradio-runtime") ''
|
||||
${removeReferencesTo}/bin/remove-references-to -t ${stdenv.cc} $(readlink -f $out/lib/libgnuradio-runtime.so)
|
||||
${removeReferencesTo}/bin/remove-references-to -t ${stdenv.cc} $(readlink -f $out/lib/libgnuradio-runtime${stdenv.hostPlatform.extensions.sharedLibrary})
|
||||
''
|
||||
# Clang references in InstalledDir
|
||||
+ lib.optionalString (hasFeature "gnuradio-runtime" && stdenv.isDarwin) ''
|
||||
${removeReferencesTo}/bin/remove-references-to -t ${stdenv.cc.cc} $(readlink -f $out/lib/libgnuradio-runtime${stdenv.hostPlatform.extensions.sharedLibrary})
|
||||
''
|
||||
;
|
||||
# NOTE: Outputs are disabled due to upstream not using GNU InstallDIrs cmake
|
||||
|
@ -112,7 +116,6 @@ rec {
|
|||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
broken = stdenv.isDarwin;
|
||||
description = "Software Defined Radio (SDR) software";
|
||||
longDescription = ''
|
||||
GNU Radio is a free & open-source software development toolkit that
|
||||
|
@ -126,6 +129,6 @@ rec {
|
|||
homepage = "https://www.gnuradio.org";
|
||||
license = licenses.gpl3;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ doronbehar bjornfor fpletz ];
|
||||
maintainers = with maintainers; [ doronbehar bjornfor fpletz jiegec ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -98,19 +98,21 @@ let
|
|||
"${
|
||||
lib.makeSearchPath
|
||||
unwrapped.qt.qtbase.qtPluginPrefix
|
||||
(builtins.map lib.getBin [
|
||||
(builtins.map lib.getBin ([
|
||||
unwrapped.qt.qtbase
|
||||
] ++ lib.optionals stdenv.isLinux [
|
||||
unwrapped.qt.qtwayland
|
||||
])
|
||||
]))
|
||||
}"
|
||||
"--prefix" "QML2_IMPORT_PATH" ":"
|
||||
"${
|
||||
lib.makeSearchPath
|
||||
unwrapped.qt.qtbase.qtQmlPrefix
|
||||
(builtins.map lib.getBin [
|
||||
(builtins.map lib.getBin ([
|
||||
unwrapped.qt.qtbase
|
||||
] ++ lib.optionals stdenv.isLinux [
|
||||
unwrapped.qt.qtwayland
|
||||
])
|
||||
]))
|
||||
}"
|
||||
]
|
||||
else
|
||||
|
|
|
@ -16,6 +16,7 @@
|
|||
, xkeyboard_config
|
||||
, glib
|
||||
, libarchive
|
||||
, libxcrypt
|
||||
, python2
|
||||
}:
|
||||
|
||||
|
@ -154,6 +155,7 @@ buildFHSUserEnv {
|
|||
ocl-icd
|
||||
glib
|
||||
libarchive
|
||||
libxcrypt # provides libcrypt.so.1
|
||||
xdg-utils # xdg-open needed to open URLs
|
||||
python2
|
||||
# currently they want python 3.6 which is EOL
|
||||
|
|
|
@ -238,19 +238,19 @@ rec {
|
|||
# Get revisions from
|
||||
# https://github.com/moby/moby/tree/${version}/hack/dockerfile/install/*
|
||||
docker_20_10 = callPackage dockerGen rec {
|
||||
version = "20.10.20";
|
||||
version = "20.10.21";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-hzD4p0cunU21n0eXuMPRz37T+KSvQ583cs64f51CxLM=";
|
||||
sha256 = "sha256-hPQ1t7L2fqoFWoinqIrDwFQ1bo9TzMb4l3HmAotIUS8=";
|
||||
moby-src = fetchFromGitHub {
|
||||
owner = "moby";
|
||||
repo = "moby";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-BfFnG0cR0FyQvX683RPsY0gC5w2wvgvmDZgKnDJsnG4=";
|
||||
sha256 = "sha256-BcYDh/UEmmURt7hWLWdPTKVu/Nzoeq/shE+HnUoh8b4=";
|
||||
};
|
||||
runcRev = "v1.1.4";
|
||||
runcSha256 = "sha256-ougJHW1Z+qZ324P8WpZqawY1QofKnn8WezP7orzRTdA=";
|
||||
containerdRev = "v1.6.8";
|
||||
containerdSha256 = "sha256-0UiPhkTWV61DnAF5kWd1FctX8i0sXaJ1p/xCMznY/A8=";
|
||||
containerdRev = "v1.6.9";
|
||||
containerdSha256 = "sha256-KvQdYQLzgt/MKPsA/mO5un6nE3/xcvVYwIveNn/uDnU=";
|
||||
tiniRev = "v0.19.0";
|
||||
tiniSha256 = "sha256-ZDKu/8yE5G0RYFJdhgmCdN3obJNyRWv6K/Gd17zc1sI=";
|
||||
};
|
||||
|
|
|
@ -15,13 +15,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "switchboard-plug-display";
|
||||
version = "2.3.2";
|
||||
version = "2.3.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "elementary";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-3sYZCazGnTjIi3Iry5673TMI13sD0GuY+46AK+NJH70=";
|
||||
sha256 = "sha256-d25++3msaS9dg2Rsl7mrAezDn8Lawd3/X0XPH5Zy6Rc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -21,13 +21,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "switchboard-plug-security-privacy";
|
||||
version = "2.4.0";
|
||||
version = "2.4.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "elementary";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-jT8aYE36ZAeB9ng3RojVqxzmLtzpbsNRHPuDQ03XKcI=";
|
||||
sha256 = "sha256-k8IQumV8rjV3U4ACm5FxCqzSdwqKBaGAqsv45hsP/7c=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
{ lib
|
||||
, mkDerivation
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, gnuradio
|
||||
, cmake
|
||||
, pkg-config
|
||||
|
@ -54,6 +55,16 @@ mkDerivation {
|
|||
inherit src;
|
||||
disabledForGRafter = "3.10";
|
||||
|
||||
patches = [
|
||||
# Use cross platform struct ip instead of iphdr
|
||||
# https://github.com/ghostop14/gr-grnet/pull/19
|
||||
(fetchpatch {
|
||||
name = "fix-compilation-on-darwin.patch";
|
||||
url = "https://github.com/ghostop14/gr-grnet/commit/52c07daa9ba595b76ffa5dd90c0c96694d95d140.patch";
|
||||
sha256 = "sha256-1gJaYLIn09blOhALMfBPROt5YBXaosG41Vsd3+5h518=";
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
boost
|
||||
log4cpp
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, darwin
|
||||
, mkDerivation
|
||||
, fetchgit
|
||||
, gnuradio
|
||||
|
@ -58,6 +60,9 @@ in mkDerivation {
|
|||
] ++ lib.optionals (gnuradio.hasFeature "gr-ctrlport") [
|
||||
thrift
|
||||
python.pkgs.thrift
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
darwin.apple_sdk.frameworks.IOKit
|
||||
darwin.apple_sdk.frameworks.Security
|
||||
];
|
||||
cmakeFlags = [
|
||||
(if (gnuradio.hasFeature "python-support") then
|
||||
|
|
|
@ -15,11 +15,19 @@ stdenv.mkDerivation rec {
|
|||
|
||||
buildInputs = [ libiio ];
|
||||
|
||||
postPatch = lib.optionalString stdenv.isDarwin ''
|
||||
# Fix iio include path on darwin to match linux
|
||||
for i in test/*.c; do
|
||||
substituteInPlace $i \
|
||||
--replace 'iio/iio.h' 'iio.h'
|
||||
done
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "IIO AD9361 library for filter design and handling, multi-chip sync, etc";
|
||||
homepage = "http://analogdevicesinc.github.io/libad9361-iio/";
|
||||
license = licenses.lgpl21Plus;
|
||||
maintainers = with maintainers; [ sikmir ];
|
||||
platforms = platforms.linux;
|
||||
platforms = platforms.linux ++ platforms.darwin;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -10,11 +10,14 @@
|
|||
, libaio
|
||||
, runtimeShell
|
||||
, lib
|
||||
, pkg-config
|
||||
, CFNetwork
|
||||
, CoreServices
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libiio";
|
||||
version = "0.23";
|
||||
version = "0.24";
|
||||
|
||||
outputs = [ "out" "lib" "dev" "python" ];
|
||||
|
||||
|
@ -22,7 +25,7 @@ stdenv.mkDerivation rec {
|
|||
owner = "analogdevicesinc";
|
||||
repo = "libiio";
|
||||
rev = "v${version}";
|
||||
sha256 = "0awny9zb43dcnxa5jpxay2zxswydblnbn4x6vi5mlw1r48pzhjf8";
|
||||
sha256 = "sha256-c5HsxCdp1cv5BGTQ/8dc8J893zk9ntbfAudLpqoQ1ow=";
|
||||
};
|
||||
|
||||
# Revert after https://github.com/NixOS/nixpkgs/issues/125008 is
|
||||
|
@ -33,6 +36,7 @@ stdenv.mkDerivation rec {
|
|||
cmake
|
||||
flex
|
||||
bison
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
|
@ -40,12 +44,17 @@ stdenv.mkDerivation rec {
|
|||
libxml2
|
||||
libusb1
|
||||
avahi
|
||||
libaio
|
||||
] ++ lib.optional python.isPy3k python.pkgs.setuptools;
|
||||
] ++ lib.optional python.isPy3k python.pkgs.setuptools
|
||||
++ lib.optional stdenv.isLinux libaio
|
||||
++ lib.optionals stdenv.isDarwin [ CFNetwork CoreServices ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DUDEV_RULES_INSTALL_DIR=${placeholder "out"}/lib/udev/rules.d"
|
||||
"-DPYTHON_BINDINGS=on"
|
||||
# osx framework is disabled,
|
||||
# the linux-like directory structure is used for proper output splitting
|
||||
"-DOSX_PACKAGE=off"
|
||||
"-DOSX_FRAMEWORK=off"
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
@ -65,7 +74,7 @@ stdenv.mkDerivation rec {
|
|||
description = "API for interfacing with the Linux Industrial I/O Subsystem";
|
||||
homepage = "https://github.com/analogdevicesinc/libiio";
|
||||
license = licenses.lgpl21Plus;
|
||||
platforms = platforms.linux;
|
||||
platforms = platforms.linux ++ platforms.darwin;
|
||||
maintainers = with maintainers; [ thoughtpolice ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ lib, stdenv, fetchurl, cmake }:
|
||||
{ lib, stdenv, fetchurl, fetchpatch, cmake }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libunarr";
|
||||
|
@ -16,11 +16,16 @@ stdenv.mkDerivation rec {
|
|||
substituteInPlace pkg-config.pc.cmake \
|
||||
--replace '$'{prefix}/@CMAKE_INSTALL_LIBDIR@ @CMAKE_INSTALL_FULL_LIBDIR@ \
|
||||
--replace '$'{prefix}/@CMAKE_INSTALL_INCLUDEDIR@ @CMAKE_INSTALL_FULL_INCLUDEDIR@
|
||||
''
|
||||
# ld: unknown option: --no-undefined
|
||||
+ lib.optionalString stdenv.isDarwin ''
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace '-Wl,--no-undefined -Wl,--as-needed' '-Wl,-undefined,error'
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/selmf/unarr";
|
||||
description = "A lightweight decompression library with support for rar, tar and zip archives";
|
||||
license = licenses.lgpl3;
|
||||
license = licenses.lgpl3Plus;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ lib, stdenv, fetchurl, qtbase, qtsvg, qttools, qmake }:
|
||||
{ lib, stdenv, fetchurl, qtbase, qtsvg, qttools, qmake, fixDarwinDylibNames }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "qwt";
|
||||
|
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
|
|||
};
|
||||
|
||||
propagatedBuildInputs = [ qtbase qtsvg qttools ];
|
||||
nativeBuildInputs = [ qmake ];
|
||||
nativeBuildInputs = [ qmake ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
|
||||
|
||||
postPatch = ''
|
||||
sed -e "s|QWT_INSTALL_PREFIX.*=.*|QWT_INSTALL_PREFIX = $out|g" -i qwtconfig.pri
|
||||
|
|
|
@ -1958,17 +1958,17 @@ luafilesystem = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
|
|||
}:
|
||||
buildLuarocksPackage {
|
||||
pname = "luafilesystem";
|
||||
version = "1.7.0-2";
|
||||
version = "1.8.0-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/luafilesystem-1.7.0-2.rockspec";
|
||||
sha256 = "0xivgn8bbkx1g5a30jrjcv4hg5mpiiyrm3fhlz9lndgbh4cnjrq6";
|
||||
url = "mirror://luarocks/luafilesystem-1.8.0-1.rockspec";
|
||||
sha256 = "18nkaks0b75dmycljg5vljap5w8d0ysdkg96yl5szgzr7nzrymfa";
|
||||
}).outPath;
|
||||
src = fetchgit ( removeAttrs (builtins.fromJSON ''{
|
||||
"url": "https://github.com/keplerproject/luafilesystem",
|
||||
"rev": "de87218e9798c4dd1a40d65403d99e9e82e1cfa0",
|
||||
"date": "2017-09-15T20:07:33-03:00",
|
||||
"path": "/nix/store/20xm4942kvnb8kypg76jl7zrym5cz03c-luafilesystem",
|
||||
"sha256": "0zmprgkm9zawdf9wnw0v3w6ibaj442wlc6alp39hmw610fl4vghi",
|
||||
"rev": "7c6e1b013caec0602ca4796df3b1d7253a2dd258",
|
||||
"date": "2020-04-22T22:16:42-03:00",
|
||||
"path": "/nix/store/qzjav1cmn4zwclpfs0xzykpbv835d84z-luafilesystem",
|
||||
"sha256": "16hpwhj6zgkjns3zilcg3lxfijm3cl71v39y9n5lbjk4b9kkwh54",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": true,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "ailment";
|
||||
version = "9.2.23";
|
||||
version = "9.2.24";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
@ -17,7 +17,7 @@ buildPythonPackage rec {
|
|||
owner = "angr";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-CWjqVtVioIiEf6kvqknt4KiQmom3bA3AOJQHszKOLWM=";
|
||||
hash = "sha256-bRoSYl+VmlACWdS3m4G4a/649yMRtYp+J6pHPEAFtCk=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -46,7 +46,7 @@ in
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "angr";
|
||||
version = "9.2.23";
|
||||
version = "9.2.24";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
@ -55,7 +55,7 @@ buildPythonPackage rec {
|
|||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-qI/KKfbr2M46Bn8+4qbB6NCmaTF4nHzm+dZ3AJrsD2o=";
|
||||
hash = "sha256-STFNKFI35PpdlZ5537G2+6RBRJDsrEb1MQNLLQnhiB8=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -27,18 +27,20 @@
|
|||
, pymongo
|
||||
, pytestCheckHook
|
||||
, python
|
||||
, pythonAtLeast
|
||||
, python-dateutil
|
||||
, pythonAtLeast
|
||||
, pythonRelaxDepsHook
|
||||
, pytz
|
||||
, pyyaml
|
||||
, requests
|
||||
, requests-mock
|
||||
, scikit-learn
|
||||
, setuptools
|
||||
, sqlalchemy
|
||||
, tenacity
|
||||
, typing-extensions
|
||||
, testcontainers
|
||||
, scikit-learn }:
|
||||
, typing-extensions
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "apache-beam";
|
||||
|
@ -51,14 +53,16 @@ buildPythonPackage rec {
|
|||
sha256 = "sha256-0S7Dj6PMSbZkEAY6ZLUpKVfe/tFxsq60TTAFj0Qhtv0=";
|
||||
};
|
||||
|
||||
# See https://github.com/NixOS/nixpkgs/issues/156957.
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace "dill>=0.3.1.1,<0.3.2" "dill" \
|
||||
--replace "pyarrow>=0.15.1,<8.0.0" "pyarrow" \
|
||||
--replace "numpy>=1.14.3,<1.23.0" "numpy" \
|
||||
--replace "pymongo>=3.8.0,<4.0.0" "pymongo"
|
||||
'';
|
||||
pythonRelaxDeps = [
|
||||
# See https://github.com/NixOS/nixpkgs/issues/156957
|
||||
"dill"
|
||||
"numpy"
|
||||
"pyarrow"
|
||||
"pymongo"
|
||||
|
||||
# See https://github.com/NixOS/nixpkgs/issues/193613
|
||||
"protobuf"
|
||||
];
|
||||
|
||||
sourceRoot = "source/sdks/python";
|
||||
|
||||
|
@ -66,6 +70,7 @@ buildPythonPackage rec {
|
|||
cython
|
||||
grpcio-tools
|
||||
mypy-protobuf
|
||||
pythonRelaxDepsHook
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "archinfo";
|
||||
version = "9.2.23";
|
||||
version = "9.2.24";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
@ -17,7 +17,7 @@ buildPythonPackage rec {
|
|||
owner = "angr";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-PjxM25k8wTl5e0ZyIVCUq6BENiLRMAgMaUeUaxYTIBo=";
|
||||
hash = "sha256-e8s8/HzJ8yeqcUarGCnDGHzwMUqYj/1/rC6p+zWihLk=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
32
pkgs/development/python-modules/chacha20poly1305/default.nix
Normal file
32
pkgs/development/python-modules/chacha20poly1305/default.nix
Normal file
|
@ -0,0 +1,32 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, pythonOlder
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "chacha20poly1305";
|
||||
version = "0.0.3";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-8vAFx89GOP+k/wbALHh0gGi2QpFnlcbRbHzF41XnDt8=";
|
||||
};
|
||||
|
||||
# Module has no tests
|
||||
doCheck = false;
|
||||
|
||||
pythonImportsCheck = [
|
||||
"chacha20poly1305"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Module that implements ChaCha20Poly1305";
|
||||
homepage = "https://github.com/ph4r05/py-chacha20poly1305";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ wolfangaukang ];
|
||||
};
|
||||
}
|
|
@ -15,7 +15,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "claripy";
|
||||
version = "9.2.23";
|
||||
version = "9.2.24";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
@ -24,7 +24,7 @@ buildPythonPackage rec {
|
|||
owner = "angr";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-geTAvIVgvlGHYc3W2v1jNg2+sfbIhEHmE2uCvT6fIug=";
|
||||
hash = "sha256-I5uf7K5QBhgbumRMuFmJKPOmwXjmf4BP1JiFuxk40AA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
|
||||
let
|
||||
# The binaries are following the argr projects release cycle
|
||||
version = "9.2.23";
|
||||
version = "9.2.24";
|
||||
|
||||
# Binary files from https://github.com/angr/binaries (only used for testing and only here)
|
||||
binaries = fetchFromGitHub {
|
||||
|
@ -38,7 +38,7 @@ buildPythonPackage rec {
|
|||
owner = "angr";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-fuKBmJcH8h2oM7M0XYdLcGbLI/sm51nKM4d8099MKnw=";
|
||||
hash = "sha256-xCU/9V+rncJxpv5MnalpyKSLr85K3y+CYEqvAN9ixt0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -38,6 +38,8 @@ buildPythonPackage rec {
|
|||
"test_from_nurbs_python_curve_to_ezdxf_bspline"
|
||||
"test_from_ezdxf_bspline_to_nurbs_python_curve_non_rational"
|
||||
"test_from_ezdxf_bspline_to_nurbs_python_curve_rational"
|
||||
# AssertionError: assert 44.99999999999999 == 45
|
||||
"test_dimension_transform_interface"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "hahomematic";
|
||||
version = "2022.10.9";
|
||||
version = "2022.10.10";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
|
@ -24,7 +24,7 @@ buildPythonPackage rec {
|
|||
owner = "danielperna84";
|
||||
repo = pname;
|
||||
rev = "refs/tags/${version}";
|
||||
sha256 = "sha256-QBYJnQzKGQDPJJ6mWRBYwuPiv+Yktu31SparORuvUwY=";
|
||||
sha256 = "sha256-msSAZAKJFN4bjnJABuAI+rZ5HJSzKFkq4LV2jat6Tas=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
64
pkgs/development/python-modules/python-bsblan/default.nix
Normal file
64
pkgs/development/python-modules/python-bsblan/default.nix
Normal file
|
@ -0,0 +1,64 @@
|
|||
{ lib
|
||||
, aiohttp
|
||||
, aresponses
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, packaging
|
||||
, poetry-core
|
||||
, pydantic
|
||||
, pytest-asyncio
|
||||
, pytest-mock
|
||||
, pytestCheckHook
|
||||
, pythonOlder
|
||||
, yarl
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "python-bsblan";
|
||||
version = "0.5.6";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "liudger";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-eTKexiuomlTryy2bD2w9Pzhb4R9C3OIbLNX+7h/5l+c=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
poetry-core
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
aiohttp
|
||||
packaging
|
||||
pydantic
|
||||
yarl
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
aresponses
|
||||
pytest-asyncio
|
||||
pytest-mock
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace 'version = "0.0.0"' 'version = "${version}"' \
|
||||
--replace "--cov" ""
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [
|
||||
"bsblan"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Module to control and monitor an BSBLan device programmatically";
|
||||
homepage = "https://github.com/liudger/python-bsblan";
|
||||
license = with licenses; [ mit ];
|
||||
maintainers = with maintainers; [ fab ];
|
||||
};
|
||||
}
|
|
@ -13,14 +13,14 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyvex";
|
||||
version = "9.2.23";
|
||||
version = "9.2.24";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-PCAIrfgcCXzcN7Oq9JTZYJF/8gUGcoXXvG+aJ4kLQQs=";
|
||||
hash = "sha256-PRrr/ry4OEdn45y5AiW6uwcKfxvDUwt1ylfgsOR47HI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -16,13 +16,13 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "timetagger";
|
||||
version = "22.9.3";
|
||||
version = "22.10.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "almarklein";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "sha256-9YmO0nD6QSFMSXsWlfbRxNWW1nwe7WXinC9pLe7rDEY=";
|
||||
sha256 = "sha256-+7PKYVZfX+zDBKpaFwEVftyp4yPL90X9HSQDvoNNFuA=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, buildPythonPackage
|
||||
, setuptools
|
||||
, pythonOlder
|
||||
, fetchPypi
|
||||
, substituteAll
|
||||
|
@ -61,6 +62,7 @@ buildPythonPackage rec {
|
|||
nativeBuildInputs = [
|
||||
attrdict
|
||||
pkg-config
|
||||
setuptools
|
||||
SDL
|
||||
sip
|
||||
which
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "codeowners";
|
||||
version = "1.0.0";
|
||||
version = "1.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hmarr";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-4/e+EnRI2YfSx10mU7oOZ3JVE4TNEFwD2YJv+C0qBhI=";
|
||||
hash = "sha256-ttJLJtuZrY71eKcjoSLypGTUeXd2lAJlM10Ft9YEEKc=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-UMLM9grPSmx3nAh1/y7YhMWk12/JcT75/LQvjnLfCyE=";
|
||||
|
|
|
@ -2,14 +2,14 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "dprint";
|
||||
version = "0.32.1";
|
||||
version = "0.32.2";
|
||||
|
||||
src = fetchCrate {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-CZSGE9HsxBX7vqLLPTLWFi/NGHa1FXA6YWqFHvzVeAQ=";
|
||||
sha256 = "sha256-F7hqSbCGP3p+6khNMfuUABAvtB8MMABcpX7zK9rWhrQ=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-vYiCSU02mHUKKe0tyB+byhNZhZ+d8yhQf8IKI5r/qYU=";
|
||||
cargoSha256 = "sha256-Azsky2rst+z33EKfZ+6LSeF+MpSNjNxQrLkqxgLAQ1o=";
|
||||
|
||||
buildInputs = lib.optionals stdenv.isDarwin [ Security ];
|
||||
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pahole";
|
||||
version = "1.23";
|
||||
version = "1.24";
|
||||
src = fetchgit {
|
||||
url = "https://git.kernel.org/pub/scm/devel/pahole/pahole.git";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Dt3ZcUfjwdtTTv6qRFRgwK5GFWXdpN7fvb9KhpS1O94=";
|
||||
sha256 = "sha256-OPseVKt5kIKgK096+ufKrWMS1E/7Z0uxNqCMN6wKfKg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake pkg-config ];
|
||||
|
|
|
@ -2,15 +2,15 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "oras";
|
||||
version = "0.14.1";
|
||||
version = "0.15.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "oras-project";
|
||||
repo = "oras";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-SE79SQtQT+HRHjxRXnu2bWNKj56P5Szhdo+CpvQRwlI=";
|
||||
sha256 = "sha256-8QmMC4eB7WNxfEsVRUzv/gb7QmNBvcgDEENa1XxpCug=";
|
||||
};
|
||||
vendorSha256 = "sha256-ufTQlqMRIFgyH+xO+fPKBTQ9blqM9thiYrVlQDmgUqQ=";
|
||||
vendorSha256 = "sha256-THqrGnJnNDL6BJpRxeNLPjWB+SEUMUhiVOcJZDTM6n8=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
|
|
|
@ -2,14 +2,14 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cargo-modules";
|
||||
version = "0.5.12";
|
||||
version = "0.5.14";
|
||||
|
||||
src = fetchCrate {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-Fm3D1VnudZhXpH7ymQNpViwwODvXYeO/e2xT3XXfclk=";
|
||||
sha256 = "sha256-urbyWNbmj2qEO4JJ/waRXGRJ9L5KgwsRB5Wh9yib8zc=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-PiYonf+aD+Q3mWtP+7NDu9wu3vKrMRAlYh94fXLMWD8=";
|
||||
cargoSha256 = "sha256-3OxO+j5UuPEg9xNmN+kIqpdq6fVnFpgx5xCaMNue52g=";
|
||||
|
||||
buildInputs = lib.optionals stdenv.isDarwin [
|
||||
CoreFoundation
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "MoltenVK";
|
||||
version = "1.1.11";
|
||||
version = "1.2.0";
|
||||
|
||||
buildInputs = [ AppKit Foundation Metal QuartzCore cereal ]
|
||||
++ lib.attrValues finalAttrs.passthru;
|
||||
|
@ -39,8 +39,8 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
src = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "glslang";
|
||||
rev = "73c9630da979017b2f7e19c6549e2bdb93d9b238";
|
||||
hash = "sha256-+NKp/4e3iruAcTunpxksvCHxoVYmPd0kFI8JDJJUVg4=";
|
||||
rev = "5755de46b07e4374c05fb1081f65f7ae1f8cca81";
|
||||
hash = "sha256-huPrQr+lPi7QCF8CufAavHEKGDDimGrcskiojhH9QYk=";
|
||||
};
|
||||
})).override { inherit (finalAttrs.passthru) spirv-headers spirv-tools; };
|
||||
spirv-cross = spirv-cross.overrideAttrs (old: {
|
||||
|
@ -49,32 +49,32 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
src = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "SPIRV-Cross";
|
||||
rev = "61c603f3baa5270e04bcfb6acf83c654e3c57679";
|
||||
hash = "sha256-gV5ba8SlPmkUptZkQfrrEDoFXrFTfs3eVOf807cO/f8=";
|
||||
rev = "f09ba2777714871bddb70d049878af34b94fa54d";
|
||||
hash = "sha256-yVpLW1DbcHDuM9Bm3uGhAC0v9XjmpBoU9x7kmWdg6/o=";
|
||||
};
|
||||
});
|
||||
spirv-headers = spirv-headers.overrideAttrs (_: {
|
||||
src = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "spirv-headers";
|
||||
rev = "b2a156e1c0434bc8c99aaebba1c7be98be7ac580";
|
||||
hash = "sha256-qYhFoRrQOlvYvVXhIFsa3dZuORDpZyVC5peeYmGNimw=";
|
||||
rev = "85a1ed200d50660786c1a88d9166e871123cce39";
|
||||
hash = "sha256-lUWgZYGPu+IaLUrbtyC7R0o3Hq/q7C7BE8r7DAsiC30=";
|
||||
};
|
||||
});
|
||||
spirv-tools = (spirv-tools.overrideAttrs (old: {
|
||||
src = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "spirv-tools";
|
||||
rev = "5e61ea2098220059e89523f1f47b0bcd8c33b89a";
|
||||
hash = "sha256-jpVvjrNrTAKUY4sjUT/gCUElLtW4BrznH1DbStojGB8=";
|
||||
rev = "eb0a36633d2acf4de82588504f951ad0f2cecacb";
|
||||
hash = "sha256-sqjQoz9v9alSPc0ujEcWZxDAWh2S6oAPP1+JZmNCpA0=";
|
||||
};
|
||||
})).override { inherit (finalAttrs.passthru) spirv-headers; };
|
||||
vulkan-headers = vulkan-headers.overrideAttrs (old: {
|
||||
src = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "Vulkan-Headers";
|
||||
rev = "c896e2f920273bfee852da9cca2a356bc1c2031e";
|
||||
hash = "sha256-zUT5+Ttmkrj51a9FS1tQxoYMS0Y0xV8uaCEJNur4khc=";
|
||||
rev = "98f440ce6868c94f5ec6e198cc1adda4760e8849";
|
||||
hash = "sha256-EoD48jBoJmIet4BDC6bYxOsKK2358SZ/NcZeM61q/5g=";
|
||||
};
|
||||
});
|
||||
};
|
||||
|
@ -83,7 +83,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
owner = "KhronosGroup";
|
||||
repo = "MoltenVK";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-+/vlZvEuake0E2jFZOcctEVGMCcXelGPQJXt1EI06us=";
|
||||
hash = "sha256-PqrKGNGw7nJbirRgIargIV6Jbgoblu+2fn5qdHKI6BI=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
|
|
@ -74,9 +74,11 @@ stdenv.mkDerivation {
|
|||
installFlags = [ "install" "install-man" "ASCIIDOC8=1" "prefix=$(out)" ];
|
||||
|
||||
preFixup = ''
|
||||
# pull in 'objdump' into PATH to make annotations work
|
||||
# Pull in 'objdump' into PATH to make annotations work.
|
||||
# The embeded Python interpreter will search PATH to calculate the Python path configuration(Should be fixed by upstream).
|
||||
# Add python.interpreter to PATH for now.
|
||||
wrapProgram $out/bin/perf \
|
||||
--prefix PATH : "${binutils-unwrapped}/bin"
|
||||
--prefix PATH : ${lib.makeBinPath ([ binutils-unwrapped ] ++ (if (lib.versionAtLeast kernel.version "4.19") then [ python3 ] else [ python2 ]))}
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
|
|
|
@ -75,6 +75,10 @@ stdenv.mkDerivation rec {
|
|||
chmod +x $out/bin\/*
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
inherit jre; # Used by the NixOS module to select the supported jre
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://kafka.apache.org";
|
||||
description = "A high-throughput distributed messaging system";
|
||||
|
@ -83,5 +87,4 @@ stdenv.mkDerivation rec {
|
|||
maintainers = [ maintainers.ragge ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
passthru = { inherit jdk17_headless; };
|
||||
}
|
||||
|
|
|
@ -1,28 +1,28 @@
|
|||
{ lib, fetchFromGitHub, buildPythonPackage, aioredis, aiofiles, django_3
|
||||
, fastapi, msgpack, pynacl, typing-extensions
|
||||
{ lib, fetchFromGitHub, buildPythonPackage, aiofiles, django_3
|
||||
, fastapi, msgpack, pynacl, redis, typing-extensions
|
||||
, withLdap ? true, python-ldap }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "etebase-server";
|
||||
version = "0.9.1";
|
||||
version = "0.10.0";
|
||||
format = "other";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "etesync";
|
||||
repo = "server";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-mYXy0N7ohNk3K2XNB6JvULF6lhL5dV8yBvooR6RuV1E=";
|
||||
sha256 = "sha256-z6aiXSWdLcDfOpqC5epsclXWxJq59MqWDQOnnFqGwz4=";
|
||||
};
|
||||
|
||||
patches = [ ./secret.patch ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
aioredis
|
||||
aiofiles
|
||||
django_3
|
||||
fastapi
|
||||
msgpack
|
||||
pynacl
|
||||
redis
|
||||
typing-extensions
|
||||
] ++ lib.optional withLdap python-ldap;
|
||||
|
||||
|
|
|
@ -7,18 +7,18 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "mattermost";
|
||||
version = "7.3.0";
|
||||
version = "7.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mattermost";
|
||||
repo = "mattermost-server";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-WDFay0XeaeNR/yX5if9Ab9XwzFF4cIGwBOrhc2rlX/c=";
|
||||
sha256 = "sha256-GgspsSzfr1DKcSaLO6tDguCTQlK1c9SuTzRZmTvoNG4=";
|
||||
};
|
||||
|
||||
webapp = fetchurl {
|
||||
url = "https://releases.mattermost.com/${version}/mattermost-${version}-linux-amd64.tar.gz";
|
||||
sha256 = "sha256-fIjasaaAEMPLaxo86MfASqTp/0WzzTDKJACKWuWby/A=";
|
||||
sha256 = "sha256-N4wvgrTmg1J06IPmpLlPHOHNNB+bH2BBQgEsv9GWCN0=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-qZQXNVbJZDddVE+xk6F8XJCEg5dhhuXz68wcn2Uvmxk=";
|
||||
|
|
|
@ -101,18 +101,18 @@
|
|||
"sha256": "1flggxd6hw0ps3b0y32a2aj9g3zfpzbaiwzx1zn2s7zpxn508y1b",
|
||||
"version": "5.3.1"
|
||||
},
|
||||
"wordpress-seo": {
|
||||
"path": "wordpress-seo/tags/19.8",
|
||||
"rev": "2796969",
|
||||
"sha256": "0vnj7b37s9rra2m957baz8ki4z6x6acl76wgx8yj2063823q0pl2",
|
||||
"version": "19.8"
|
||||
},
|
||||
"webp-express": {
|
||||
"path": "webp-express/tags/0.25.5",
|
||||
"rev": "2728620",
|
||||
"sha256": "0m8hbz72kvzlrcb5jnyfka90xfk1dg602rwmf22xnawzbw52532p",
|
||||
"version": "0.25.5"
|
||||
},
|
||||
"wordpress-seo": {
|
||||
"path": "wordpress-seo/tags/19.8",
|
||||
"rev": "2796969",
|
||||
"sha256": "0vnj7b37s9rra2m957baz8ki4z6x6acl76wgx8yj2063823q0pl2",
|
||||
"version": "19.8"
|
||||
},
|
||||
"worker": {
|
||||
"path": "worker/tags/4.9.14",
|
||||
"rev": "2739771",
|
||||
|
@ -125,6 +125,12 @@
|
|||
"sha256": "1wkj15vclbh4l38fkrmbmc4w7lapfydq9rrpn508ki19f4544dam",
|
||||
"version": "1.0"
|
||||
},
|
||||
"wp-fastest-cache": {
|
||||
"path": "wp-fastest-cache/tags/1.0.6",
|
||||
"rev": "2793013",
|
||||
"sha256": "14xqqnv1snc2nc4y7cc6mmjkfkds18lk4xh7x75cbhy5cd8nqx8x",
|
||||
"version": "1.0.6"
|
||||
},
|
||||
"wp-gdpr-compliance": {
|
||||
"path": "wp-gdpr-compliance/tags/2.0.20",
|
||||
"rev": "2793947",
|
||||
|
@ -138,10 +144,10 @@
|
|||
"version": "3.6.1"
|
||||
},
|
||||
"wp-statistics": {
|
||||
"path": "wp-statistics/tags/13.2.6",
|
||||
"rev": "2781181",
|
||||
"sha256": "0vzlhlnna2dx4kyi24rqhbrx5n5zsw51hqgsaslfiyyir64dkzgz",
|
||||
"version": "13.2.6"
|
||||
"path": "wp-statistics/tags/13.2.7",
|
||||
"rev": "2803072",
|
||||
"sha256": "001b9q8vmpj3rvlv2s8h7c9m2xvd58mcvcas99n4bmllzrxy2pji",
|
||||
"version": "13.2.7"
|
||||
},
|
||||
"wp-user-avatars": {
|
||||
"path": "wp-user-avatars/trunk",
|
||||
|
|
|
@ -19,9 +19,10 @@
|
|||
, "webp-express"
|
||||
, "wordpress-seo"
|
||||
, "worker"
|
||||
, "wp-mail-smtp"
|
||||
, "wp-change-email-sender"
|
||||
, "wp-fastest-cache"
|
||||
, "wp-gdpr-compliance"
|
||||
, "wp-mail-smtp"
|
||||
, "wp-statistics"
|
||||
, "wp-user-avatars"
|
||||
, "wp-change-email-sender"
|
||||
]
|
||||
|
|
|
@ -5,15 +5,15 @@
|
|||
, git, nix, nixfmt, jq, coreutils, gnused, curl, cacert, bash }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2022-10-24";
|
||||
version = "2022-10-25";
|
||||
pname = "oh-my-zsh";
|
||||
rev = "bb8a0aa2c1c54c3aeb3e703397ab050fd62e36e6";
|
||||
rev = "49691b58b3c1fbe64b927ec88d5e9697f76e2a80";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
inherit rev;
|
||||
owner = "ohmyzsh";
|
||||
repo = "ohmyzsh";
|
||||
sha256 = "bLuUkT81eJ37WtLasNzDNiGY21SveCZO7Ma5fbb61mc=";
|
||||
sha256 = "z6cwBsOxMEdm+3QeqeDPIya0jzvrcxrkl7ssd+dHkKo=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
|
|
|
@ -51,11 +51,11 @@ let
|
|||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "ventoy-bin";
|
||||
version = "1.0.80";
|
||||
version = "1.0.81";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ventoy/Ventoy/releases/download/v${finalAttrs.version}/ventoy-${finalAttrs.version}-linux.tar.gz";
|
||||
hash = "sha256-FmMpMUy8VqwbOiRWZdoY76ToSoWWbBGM5h/9VS8rYRY=";
|
||||
hash = "sha256-15y05g+F+oEFYUUy7SE57GZ1RSHqdZnk2iOPsy1L0GI=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "bzip3";
|
||||
version = "1.1.7";
|
||||
version = "1.1.8";
|
||||
|
||||
outputs = [ "bin" "dev" "out" ];
|
||||
|
||||
|
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
|||
owner = "kspalaiologos";
|
||||
repo = "bzip3";
|
||||
rev = version;
|
||||
hash = "sha256-dRdsKB1wpcDcgGZwoVQTcvrORmN/NhqKGoPwD5p5BQk=";
|
||||
hash = "sha256-ok5LwarXVe2gwwfIWVSfHHY0lt1IfGtkLPlVo757G6g=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -7,13 +7,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "tbls";
|
||||
version = "1.56.3";
|
||||
version = "1.56.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "k1LoW";
|
||||
repo = "tbls";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-ll2S9/62MdOcYhTiNM06Ck2UAnZL82CF1YCe3qtJeRo=";
|
||||
hash = "sha256-b9cYt7s7tbPQZtT5/3MY2zDeASd32FP0f5sN34w/fmI=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-pmnSeQHZEtsshldfq6D/r5pMYA5ivMWkzjOq2/WseYU=";
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "dnsproxy";
|
||||
version = "0.46.1";
|
||||
version = "0.46.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "AdguardTeam";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-MTnxKw1aH1DfUNCf3Rcrb93ShAsQ3/pJTpYB3LAu894=";
|
||||
sha256 = "sha256-yqlnjPy0rjA0C2hBtFfc+hMwOk18okSKZufqc0uDJLE=";
|
||||
};
|
||||
|
||||
vendorSha256 = null;
|
||||
|
|
|
@ -6,13 +6,13 @@
|
|||
stdenv.mkDerivation rec {
|
||||
|
||||
pname = "home-manager";
|
||||
version = "2022-04-17";
|
||||
version = "2022-10-25";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nix-community";
|
||||
repo = "home-manager";
|
||||
rev = "620ed197f3624dafa5f42e61d5c043f39b8df366";
|
||||
sha256 = "sha256-BoBvGT71yOfrNDTZQs7+FX0zb4yjMBETgIjtTsdJw+o=";
|
||||
rev = "7dc4e4ebd71280842b4d30975439980baaac9db8";
|
||||
sha256 = "sha256-kINnLxC0KFalUk4tVO/H5hUU7FVAOYYcUSWrsBpnl+I=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
|
|
@ -6,15 +6,15 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "chain-bench";
|
||||
version = "0.1.4";
|
||||
version = "0.1.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "aquasecurity";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-H0CSeZ7plMJJ3vaf+ihm/PQMPw4DnNsAaVsH4zP8wqs=";
|
||||
sha256 = "sha256-UpUKt6R5Yr/L0n7DFqIO6s8Y8WT5UYDjMO/QmhcsOxE=";
|
||||
};
|
||||
vendorSha256 = "sha256-wBt0NbRJdU9yfRx2aIA5P6Q0Q3oysJBnfFbAx1yr3fI=";
|
||||
vendorSha256 = "sha256-R6V4dE2cNKcsBweSaUWjZHKnUQP/kADAbW2aTQc7TAg=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
|
|
@ -19,23 +19,26 @@ let
|
|||
in
|
||||
buildGoModule rec {
|
||||
pname = "tracee";
|
||||
version = "0.8.3";
|
||||
version = "0.9.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "aquasecurity";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-VxTJcl7gHRZEXpFbxU4iMwqxuR1r0BNSseWQ5ijWHU4=";
|
||||
sha256 = "sha256-w/x7KhopkADKvpDc5TE5Kf34pRY6HP3kX1Lqujnl0b8=";
|
||||
};
|
||||
vendorSha256 = "sha256-szPoJUtzya3+8dOnkDxHEs3+a1LTVoMMLjUSrUlfiGg=";
|
||||
vendorSha256 = "sha256-5RXNRNoMydFcemNGgyfqcUPtfMVgMYdiyWo/sZi8GQw=";
|
||||
|
||||
patches = [
|
||||
./use-our-libbpf.patch
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
# needed to build bpf libs
|
||||
hardeningDisable = [ "stackprotector" ];
|
||||
|
||||
nativeBuildInputs = [ pkg-config clang ];
|
||||
# ensure libbpf version exactly matches the version added as a submodule
|
||||
buildInputs = [ libbpf zlib elfutils ];
|
||||
buildInputs = [ elfutils libbpf zlib ];
|
||||
|
||||
makeFlags = [
|
||||
"VERSION=v${version}"
|
||||
|
@ -44,16 +47,9 @@ buildGoModule rec {
|
|||
"CMD_GIT=echo"
|
||||
];
|
||||
|
||||
# TODO: patch tracee to take libbpf.a and headers via include path
|
||||
preBuild = ''
|
||||
mkdir -p 3rdparty/libbpf/src
|
||||
mkdir -p ./dist
|
||||
cp -r ${libbpf}/lib ./dist/libbpf
|
||||
chmod +w ./dist/libbpf
|
||||
cp -r ${libbpf}/include/bpf ./dist/libbpf/
|
||||
'';
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
mkdir -p ./dist
|
||||
make $makeFlags ''${enableParallelBuilding:+-j$NIX_BUILD_CORES} bpf-core all
|
||||
runHook postBuild
|
||||
'';
|
||||
|
|
|
@ -1,16 +0,0 @@
|
|||
diff --git a/tests/integration/integration_test.go b/tests/integration/integration_test.go
|
||||
index afbc5330..3b38a1b8 100644
|
||||
--- a/tests/integration/integration_test.go
|
||||
+++ b/tests/integration/integration_test.go
|
||||
@@ -205,11 +205,6 @@ func Test_EventFilters(t *testing.T) {
|
||||
filterArgs []string
|
||||
eventFunc func(*testing.T, *[]trace.Event)
|
||||
}{
|
||||
- {
|
||||
- name: "do a file write",
|
||||
- filterArgs: []string{"event=magic_write"},
|
||||
- eventFunc: checkMagicwrite,
|
||||
- },
|
||||
{
|
||||
name: "execute a command",
|
||||
filterArgs: []string{"comm=ls"},
|
129
pkgs/tools/security/tracee/use-our-libbpf.patch
Normal file
129
pkgs/tools/security/tracee/use-our-libbpf.patch
Normal file
|
@ -0,0 +1,129 @@
|
|||
diff --git a/Makefile b/Makefile
|
||||
index c72cf63d..e96b7eed 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -50,6 +50,7 @@ CMD_STATICCHECK ?= staticcheck
|
||||
# libs
|
||||
#
|
||||
|
||||
+LIB_BPF ?= libbpf
|
||||
LIB_ELF ?= libelf
|
||||
LIB_ZLIB ?= zlib
|
||||
|
||||
@@ -172,10 +173,6 @@ env:
|
||||
@echo "KERN_BUILD_PATH $(KERN_BUILD_PATH)"
|
||||
@echo "KERN_SRC_PATH $(KERN_SRC_PATH)"
|
||||
@echo ---------------------------------------
|
||||
- @echo "LIBBPF_CFLAGS $(LIBBPF_CFLAGS)"
|
||||
- @echo "LIBBPF_LDLAGS $(LIBBPF_LDFLAGS)"
|
||||
- @echo "LIBBPF_SRC $(LIBBPF_SRC)"
|
||||
- @echo ---------------------------------------
|
||||
@echo "STATIC $(STATIC)"
|
||||
@echo ---------------------------------------
|
||||
@echo "BPF_VCPU $(BPF_VCPU)"
|
||||
@@ -274,8 +271,6 @@ OUTPUT_DIR = ./dist
|
||||
$(OUTPUT_DIR):
|
||||
#
|
||||
@$(CMD_MKDIR) -p $@
|
||||
- @$(CMD_MKDIR) -p $@/libbpf
|
||||
- @$(CMD_MKDIR) -p $@/libbpf/obj
|
||||
|
||||
#
|
||||
# embedded btfhub
|
||||
@@ -286,37 +281,6 @@ $(OUTPUT_DIR)/btfhub:
|
||||
@$(CMD_MKDIR) -p $@
|
||||
@$(CMD_TOUCH) $@/.place-holder # needed for embed.FS
|
||||
|
||||
-#
|
||||
-# libbpf
|
||||
-#
|
||||
-
|
||||
-LIBBPF_CFLAGS = "-fPIC"
|
||||
-LIBBPF_LDLAGS =
|
||||
-LIBBPF_SRC = ./3rdparty/libbpf/src
|
||||
-
|
||||
-$(OUTPUT_DIR)/libbpf/libbpf.a: \
|
||||
- $(LIBBPF_SRC) \
|
||||
- $(wildcard $(LIBBPF_SRC)/*.[ch]) \
|
||||
- | .checkver_$(CMD_CLANG) $(OUTPUT_DIR)
|
||||
-#
|
||||
- CC="$(CMD_CLANG)" \
|
||||
- CFLAGS="$(LIBBPF_CFLAGS)" \
|
||||
- LD_FLAGS="$(LIBBPF_LDFLAGS)" \
|
||||
- $(MAKE) \
|
||||
- -C $(LIBBPF_SRC) \
|
||||
- BUILD_STATIC_ONLY=1 \
|
||||
- DESTDIR=$(abspath ./$(OUTPUT_DIR)/libbpf/) \
|
||||
- OBJDIR=$(abspath ./$(OUTPUT_DIR)/libbpf/obj) \
|
||||
- INCLUDEDIR= LIBDIR= UAPIDIR= prefix= libdir= \
|
||||
- install install_uapi_headers
|
||||
-
|
||||
-$(LIBBPF_SRC): \
|
||||
- | .check_$(CMD_GIT)
|
||||
-#
|
||||
-ifeq ($(wildcard $@), )
|
||||
- @$(CMD_GIT) submodule update --init --recursive
|
||||
-endif
|
||||
-
|
||||
#
|
||||
# non co-re ebpf
|
||||
#
|
||||
@@ -333,7 +297,6 @@ BPF_NOCORE_TAG = $(subst .,_,$(KERN_RELEASE)).$(subst .,_,$(VERSION))
|
||||
bpf-nocore: $(OUTPUT_DIR)/tracee.bpf.$(BPF_NOCORE_TAG).o
|
||||
|
||||
$(OUTPUT_DIR)/tracee.bpf.$(BPF_NOCORE_TAG).o: \
|
||||
- $(OUTPUT_DIR)/libbpf/libbpf.a \
|
||||
$(TRACEE_EBPF_OBJ_SRC)
|
||||
#
|
||||
MAKEFLAGS="--no-print-directory"
|
||||
@@ -351,7 +314,6 @@ $(OUTPUT_DIR)/tracee.bpf.$(BPF_NOCORE_TAG).o: \
|
||||
-I $(KERN_SRC_PATH)/include/uapi \
|
||||
-I $(KERN_BUILD_PATH)/include/generated \
|
||||
-I $(KERN_BUILD_PATH)/include/generated/uapi \
|
||||
- -I $(OUTPUT_DIR)/libbpf \
|
||||
-I ./3rdparty/include \
|
||||
-Wunused \
|
||||
-Wall \
|
||||
@@ -412,7 +374,6 @@ TRACEE_EBPF_OBJ_CORE_HEADERS = $(shell find pkg/ebpf/c -name *.h)
|
||||
bpf-core: $(OUTPUT_DIR)/tracee.bpf.core.o
|
||||
|
||||
$(OUTPUT_DIR)/tracee.bpf.core.o: \
|
||||
- $(OUTPUT_DIR)/libbpf/libbpf.a \
|
||||
$(TRACEE_EBPF_OBJ_SRC) \
|
||||
$(TRACEE_EBPF_OBJ_CORE_HEADERS)
|
||||
#
|
||||
@@ -421,7 +382,6 @@ $(OUTPUT_DIR)/tracee.bpf.core.o: \
|
||||
-D__BPF_TRACING__ \
|
||||
-DCORE \
|
||||
-I./pkg/ebpf/c/ \
|
||||
- -I$(OUTPUT_DIR)/libbpf/ \
|
||||
-I ./3rdparty/include \
|
||||
-target bpf \
|
||||
-O2 -g \
|
||||
@@ -447,8 +407,8 @@ ifeq ($(STATIC), 1)
|
||||
GO_TAGS_EBPF := $(GO_TAGS_EBPF),netgo
|
||||
endif
|
||||
|
||||
-CUSTOM_CGO_CFLAGS = "-I$(abspath $(OUTPUT_DIR)/libbpf)"
|
||||
-CUSTOM_CGO_LDFLAGS = "$(shell $(call pkg_config, $(LIB_ELF))) $(shell $(call pkg_config, $(LIB_ZLIB))) $(abspath $(OUTPUT_DIR)/libbpf/libbpf.a)"
|
||||
+CUSTOM_CGO_CFLAGS = ""
|
||||
+CUSTOM_CGO_LDFLAGS = "$(shell $(call pkg_config, $(LIB_BPF))) $(shell $(call pkg_config, $(LIB_ELF))) $(shell $(call pkg_config, $(LIB_ZLIB)))"
|
||||
|
||||
GO_ENV_EBPF =
|
||||
GO_ENV_EBPF += GOOS=linux
|
||||
@@ -468,6 +428,7 @@ $(OUTPUT_DIR)/tracee-ebpf: \
|
||||
$(TRACEE_EBPF_SRC) \
|
||||
./embedded-ebpf.go \
|
||||
| .checkver_$(CMD_GO) \
|
||||
+ .checklib_$(LIB_BPF) \
|
||||
.checklib_$(LIB_ELF) \
|
||||
.checklib_$(LIB_ZLIB) \
|
||||
btfhub
|
||||
@@ -658,7 +619,6 @@ test-rules: \
|
||||
.PHONY: test-upstream-libbpfgo
|
||||
test-upstream-libbpfgo: \
|
||||
.checkver_$(CMD_GO) \
|
||||
- $(OUTPUT_DIR)/libbpf/libbpf.a
|
||||
#
|
||||
./tests/libbpfgo.sh $(GO_ENV_EBPF)
|
||||
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "gucci";
|
||||
version = "1.5.4";
|
||||
version = "1.6.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "noqcks";
|
||||
repo = "gucci";
|
||||
rev = "refs/tags/${version}";
|
||||
sha256 = "sha256-HJPNpLRJPnziSMvxLCiNDeCWO439ELSZs/4Cq1a7Amo=";
|
||||
sha256 = "sha256-x4qCdw+hw1cZ9NY+9eEHksBn+6K0v3QZ1fuT9PX75pc=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-rAZCj5xtwTgd9/KDYnQTU1jbabtWJF5MCFgcmixDN/Q=";
|
||||
vendorSha256 = "sha256-YSAzbilyLip3cbnfVGlbHTW5cxmJyw/FYdYHXAqet+Q=";
|
||||
|
||||
ldflags = [ "-s" "-w" "-X main.AppVersion=${version}" ];
|
||||
|
||||
|
|
|
@ -12085,7 +12085,7 @@ with pkgs;
|
|||
tracebox = callPackage ../tools/networking/tracebox { stdenv = gcc10StdenvCompat; };
|
||||
|
||||
tracee = callPackage ../tools/security/tracee {
|
||||
buildGoModule = buildGo118Module; # tests fail with 1.19
|
||||
libbpf = libbpf_1; # keep inline with their submodule
|
||||
};
|
||||
|
||||
tracefilegen = callPackage ../development/tools/analysis/garcosim/tracefilegen { };
|
||||
|
@ -17302,7 +17302,9 @@ with pkgs;
|
|||
inherit (darwin.apple_sdk.frameworks) Security;
|
||||
};
|
||||
|
||||
pahole = callPackage ../development/tools/misc/pahole {};
|
||||
pahole = callPackage ../development/tools/misc/pahole {
|
||||
libbpf = libbpf_1;
|
||||
};
|
||||
|
||||
panopticon = callPackage ../development/tools/analysis/panopticon {};
|
||||
|
||||
|
@ -20037,6 +20039,7 @@ with pkgs;
|
|||
libgxps = callPackage ../development/libraries/libgxps { };
|
||||
|
||||
libiio = callPackage ../development/libraries/libiio {
|
||||
inherit (darwin.apple_sdk.frameworks) CFNetwork CoreServices;
|
||||
python = python3;
|
||||
};
|
||||
|
||||
|
@ -28272,7 +28275,7 @@ with pkgs;
|
|||
python = python3;
|
||||
};
|
||||
};
|
||||
gnuradio3_9Packages = lib.recurseIntoAttrs gnuradio.pkgs;
|
||||
gnuradio3_9Packages = lib.recurseIntoAttrs gnuradio3_9.pkgs;
|
||||
# A build without gui components and other utilites not needed for end user
|
||||
# libraries
|
||||
gnuradio3_9Minimal = gnuradio.override {
|
||||
|
|
|
@ -1749,6 +1749,8 @@ in {
|
|||
|
||||
cgroup-utils = callPackage ../development/python-modules/cgroup-utils { };
|
||||
|
||||
chacha20poly1305 = callPackage ../development/python-modules/chacha20poly1305 { };
|
||||
|
||||
chacha20poly1305-reuseable = callPackage ../development/python-modules/chacha20poly1305-reuseable { };
|
||||
|
||||
chai = callPackage ../development/python-modules/chai { };
|
||||
|
@ -9012,6 +9014,8 @@ in {
|
|||
|
||||
python-box = callPackage ../development/python-modules/python-box { };
|
||||
|
||||
python-bsblan = callPackage ../development/python-modules/python-bsblan { };
|
||||
|
||||
python-cinderclient = callPackage ../development/python-modules/python-cinderclient { };
|
||||
|
||||
python-constraint = callPackage ../development/python-modules/python-constraint { };
|
||||
|
|
Loading…
Reference in a new issue