Skip to content
GitLab
Explore
Projects
Groups
Topics
Snippets
Projects
Groups
Topics
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Encrypted CAN
daredevil-small
Commits
8c513137
Commit
8c513137
authored
6 years ago
by
Tmplt
Browse files
Options
Download
Patches
Plain Diff
chore(etc): improve JLink Nix derivation
parent
cb0f4ea6
master
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
.gitignore
+1
-0
.gitignore
etc/default.nix
+78
-0
etc/default.nix
etc/shell.nix
+5
-0
etc/shell.nix
with
84 additions
and
0 deletions
+84
-0
.gitignore
+
1
−
0
View file @
8c513137
/target
**/*.rs.bk
etc/result
.envrc
This diff is collapsed.
Click to expand it.
shell
.nix
→
etc/default
.nix
+
78
−
0
View file @
8c513137
{
pkgs
?
import
<
nixpkgs
>
{}
}:
with
pkgs
;
{
stdenv
,
dpkg
,
buildFHSUserEnv
,
udev
,
fetchurl
,
buildEnv
}:
let
jlink
=
stdenv
.
mkDerivation
rec
{
arch
=
{
"x86_64-linux"
=
"x86_64"
;
"i686-linux"
=
"x86"
;
}
.
${
stdenv
.
system
};
jlinkSrc
=
stdenv
.
mkDerivation
rec
{
name
=
"jlink-v
${
version
}
"
;
version
=
"6.42c"
;
version
'
=
stdenv
.
lib
.
replaceStrings
[
"."
]
[
""
]
version
;
src
=
fetchurl
{
url
=
"https://www.segger.com/downloads/jlink/JLink_Linux_V
${
stdenv
.
lib
.
replaceStrings
[
"."
]
[
""
]
version
}
_x86_64.deb"
;
url
=
"https://www.segger.com/downloads/jlink/JLink_Linux_V
${
version
'
}
_
${
arch
}
.deb"
;
# TODO: fix sha256 for i686
sha256
=
"1ladqgszyicjg01waasbn5b6fngv4ap3vcksxcv1smrgr9yv9bv4"
;
curlOpts
=
"-d accept_license_agreement=accepted -d confirm=yes"
;
};
...
...
@@ -21,38 +27,52 @@ let
dontPatchELF
=
true
;
meta
=
with
stdenv
.
lib
;
{
description
=
"TODO"
;
homepage
=
""
;
license
=
licenses
.
unfree
;
platforms
=
platforms
.
linux
;
maintainers
=
with
maintainers
;
[
tmplt
];
};
};
# TODO: package all binaries in jlink
gdbServer
=
buildFHSUserEnv
rec
{
name
=
"JLinkGDBServerCLExe"
;
runScript
=
"
${
jlink
}
/opt/SEGGER/JLink_V6*/JLinkGDBServerCLExe"
;
};
rttClient
=
buildFHSUserEnv
rec
{
name
=
"JLinkRTTClientExe"
;
runScript
=
"
${
jlink
}
/opt/SEGGER/JLink_V6*/JLinkRTTClientExe"
;
wrapJlink
=
name
:
deps
:
buildFHSUserEnv
rec
{
inherit
name
;
runScript
=
"
${
jlinkSrc
}
/opt/SEGGER/JLink_V*/
${
name
}
"
;
targetPkgs
=
pkgs
:
deps
;
};
JLinkExe
=
buildFHSUserEnv
rec
{
name
=
"JLinkExe"
;
runScript
=
"
${
jlink
}
/opt/SEGGER/JLink_V64*/JLinkExe"
;
targetPkgs
=
pkgs
:
with
pkgs
;
[
udev
];
};
flashLite
=
wrapJlink
"JFlashLiteExe"
[];
flashSPI
=
wrapJlink
"JFlashSPICLExe"
[];
jlink
=
wrapJlink
"JLinkExe"
[
udev
];
gdbServer
=
wrapJlink
"JLinkGDBServerExe"
[];
gdbServerCL
=
wrapJlink
"JLinkGDBServerCLExe"
[];
licenseManager
=
wrapJlink
"JLinkLicenseManagerExe"
[];
remoteServer
=
wrapJlink
"JLinkRemoteServerExe"
[];
remoteServerCL
=
wrapJlink
"JLinkRemoteServerCLExe"
[];
rttClient
=
wrapJlink
"JLinkRTTClientExe"
[];
rttLogger
=
wrapJlink
"JLinkRTTLoggerExe"
[];
stm32
=
wrapJlink
"JLinkSTM32Exe"
[];
swoViewer
=
wrapJlink
"JLinkSWOViewerCLExe"
[];
jtagLoad
=
wrapJlink
"JTAGLoadExe"
[];
in
mkShell
{
buildInputs
=
[
gdbServer
rttClient
JLinkExe
];
buildEnv
rec
{
name
=
jlinkSrc
.
name
;
paths
=
[
flashLite
flashSPI
jlink
gdbServer
gdbServerCL
licenseManager
remoteServer
remoteServerCL
rttClient
rttLogger
stm32
swoViewer
jtagLoad
];
LD_LIBRARY_PATH
=
"
${
stdenv
.
cc
.
cc
.
lib
}
/lib64:$LD_LIBRARY_PATH"
;
meta
=
with
stdenv
.
lib
;
{
description
=
"TODO"
;
homepage
=
"https://www.segger.com/downloads/jlink/"
;
license
=
licenses
.
unfree
;
platforms
=
platforms
.
linux
;
maintainers
=
with
maintainers
;
[
tmplt
];
};
}
This diff is collapsed.
Click to expand it.
etc/shell.nix
0 → 100644
+
5
−
0
View file @
8c513137
with
import
<
nixpkgs
>
{};
mkShell
{
buildInputs
=
[
(
callPackage
./default.nix
{})
];
LD_LIBRARY_PATH
=
"
${
stdenv
.
cc
.
cc
.
lib
}
/lib64:$LD_LIBRARY_PATH"
;
}
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment
Menu
Explore
Projects
Groups
Topics
Snippets