Last active
April 3, 2024 09:34
-
-
Save Schievel1/0d1b027ec775bfe61bfbd97e37a6733c to your computer and use it in GitHub Desktop.
neovide-0.12.2.ebuild
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Copyright 2024 Gentoo Authors | |
# Distributed under the terms of the GNU General Public License v2 | |
# Autogenerated by pycargoebuild 0.13.2 | |
EAPI=8 | |
CRATES=" | |
ab_glyph@0.2.23 | |
ab_glyph_rasterizer@0.1.8 | |
addr2line@0.21.0 | |
adler@1.0.2 | |
ahash@0.7.7 | |
ahash@0.8.7 | |
aho-corasick@1.1.2 | |
android-activity@0.5.1 | |
android-properties@0.2.2 | |
anstream@0.6.11 | |
anstyle-parse@0.2.3 | |
anstyle-query@1.0.2 | |
anstyle-wincon@3.0.2 | |
anstyle@1.0.4 | |
anyhow@1.0.79 | |
approx@0.5.1 | |
arrayref@0.3.7 | |
arrayvec@0.7.4 | |
as-raw-xcb-connection@1.0.1 | |
async-trait@0.1.77 | |
atomic-waker@1.1.2 | |
autocfg@1.1.0 | |
backtrace@0.3.69 | |
base64@0.21.7 | |
bindgen@0.68.1 | |
bitflags@1.3.2 | |
bitflags@2.4.2 | |
block-sys@0.2.1 | |
block2@0.3.0 | |
block@0.1.6 | |
bumpalo@3.14.0 | |
bytemuck@1.14.1 | |
byteorder@1.5.0 | |
bytes@0.4.12 | |
bytes@1.5.0 | |
calloop-wayland-source@0.2.0 | |
calloop@0.12.4 | |
cc@1.0.83 | |
cesu8@1.1.0 | |
cexpr@0.6.0 | |
cfg-if@1.0.0 | |
cfg_aliases@0.1.1 | |
cgl@0.3.2 | |
clang-sys@1.7.0 | |
clap@4.4.18 | |
clap_builder@4.4.18 | |
clap_derive@4.4.7 | |
clap_lex@0.6.0 | |
clipboard-win@3.1.1 | |
cocoa-foundation@0.1.2 | |
cocoa@0.24.1 | |
color_quant@1.1.0 | |
colorchoice@1.0.0 | |
combine@4.6.6 | |
concurrent-queue@2.4.0 | |
convert_case@0.6.0 | |
copypasta@0.8.2 | |
core-foundation-sys@0.8.6 | |
core-foundation@0.9.4 | |
core-graphics-types@0.1.3 | |
core-graphics@0.22.3 | |
core-graphics@0.23.1 | |
crc32fast@1.3.2 | |
crossbeam-channel@0.5.11 | |
crossbeam-utils@0.8.19 | |
csscolorparser@0.6.2 | |
cursor-icon@1.1.0 | |
dashmap@5.5.3 | |
derive-new@0.5.9 | |
difflib@0.4.0 | |
dirs-sys@0.4.1 | |
dirs@5.0.1 | |
dispatch@0.2.0 | |
dlib@0.5.2 | |
downcast-rs@1.2.0 | |
downcast@0.11.0 | |
either@1.9.0 | |
equivalent@1.0.1 | |
errno@0.3.8 | |
fdeflate@0.3.4 | |
filetime@0.2.23 | |
flate2@1.0.28 | |
flexi_logger@0.22.6 | |
float-cmp@0.9.0 | |
foreign-types-macros@0.2.3 | |
foreign-types-shared@0.1.1 | |
foreign-types-shared@0.3.1 | |
foreign-types@0.3.2 | |
foreign-types@0.5.0 | |
form_urlencoded@1.2.1 | |
fragile@2.0.0 | |
fsevent-sys@4.1.0 | |
futures-channel@0.3.30 | |
futures-core@0.3.30 | |
futures-executor@0.3.30 | |
futures-io@0.3.30 | |
futures-macro@0.3.30 | |
futures-sink@0.3.30 | |
futures-task@0.3.30 | |
futures-util@0.3.30 | |
futures@0.1.31 | |
futures@0.3.30 | |
gethostname@0.2.3 | |
gethostname@0.4.3 | |
getrandom@0.1.16 | |
getrandom@0.2.12 | |
gimli@0.28.1 | |
gl@0.14.0 | |
gl_generator@0.14.0 | |
glob@0.3.1 | |
glutin-winit@0.4.2 | |
glutin@0.31.2 | |
glutin_egl_sys@0.6.0 | |
glutin_glx_sys@0.5.0 | |
glutin_wgl_sys@0.5.0 | |
hashbrown@0.12.3 | |
hashbrown@0.14.3 | |
heck@0.4.1 | |
hermit-abi@0.3.4 | |
home@0.5.9 | |
icrate@0.0.4 | |
idna@0.5.0 | |
image@0.24.8 | |
indexmap@2.1.0 | |
inotify-sys@0.1.5 | |
inotify@0.9.6 | |
io-lifetimes@1.0.11 | |
iovec@0.1.4 | |
itertools@0.10.5 | |
itoa@1.0.10 | |
jni-sys@0.3.0 | |
jni@0.21.1 | |
jobserver@0.1.27 | |
js-sys@0.3.67 | |
khronos_api@3.1.0 | |
kqueue-sys@1.0.4 | |
kqueue@1.0.8 | |
lazy-bytes-cast@5.0.1 | |
lazy_static@1.4.0 | |
lazycell@1.3.0 | |
libc@0.2.152 | |
libloading@0.8.1 | |
libredox@0.0.1 | |
libredox@0.0.2 | |
linux-raw-sys@0.4.13 | |
lock_api@0.4.11 | |
log@0.4.20 | |
lru@0.7.8 | |
malloc_buf@0.0.6 | |
memchr@2.7.1 | |
memmap2@0.5.10 | |
memmap2@0.9.4 | |
memoffset@0.6.5 | |
memoffset@0.7.1 | |
minimal-lexical@0.2.1 | |
miniz_oxide@0.7.1 | |
mio@0.8.10 | |
mockall@0.11.4 | |
mockall_derive@0.11.4 | |
ndk-context@0.1.1 | |
ndk-sys@0.5.0+25.2.9519653 | |
ndk@0.8.0 | |
nix@0.24.3 | |
nix@0.26.4 | |
nom@7.1.3 | |
normalize-line-endings@0.3.0 | |
notify@6.1.1 | |
num-bigint@0.4.4 | |
num-complex@0.4.4 | |
num-integer@0.1.45 | |
num-iter@0.1.43 | |
num-rational@0.4.1 | |
num-traits@0.2.17 | |
num@0.4.1 | |
num_cpus@1.16.0 | |
num_enum@0.7.2 | |
num_enum_derive@0.7.2 | |
num_threads@0.1.6 | |
nvim-rs@0.6.0 | |
objc-foundation@0.1.1 | |
objc-sys@0.3.2 | |
objc2-encode@3.0.0 | |
objc2@0.4.1 | |
objc@0.2.7 | |
objc_id@0.1.1 | |
object@0.32.2 | |
once_cell@1.19.0 | |
option-ext@0.2.0 | |
orbclient@0.3.47 | |
owned_ttf_parser@0.20.0 | |
parity-tokio-ipc@0.9.0 | |
parking_lot@0.12.1 | |
parking_lot_core@0.9.9 | |
paste@1.0.14 | |
peeking_take_while@0.1.2 | |
percent-encoding@2.3.1 | |
phf@0.11.2 | |
phf_generator@0.11.2 | |
phf_macros@0.11.2 | |
phf_shared@0.11.2 | |
pin-project-lite@0.2.13 | |
pin-utils@0.1.0 | |
pkg-config@0.3.29 | |
png@0.17.11 | |
polling@3.3.2 | |
ppv-lite86@0.2.17 | |
predicates-core@1.0.6 | |
predicates-tree@1.0.9 | |
predicates@2.1.5 | |
prettyplease@0.2.16 | |
proc-macro-crate@3.1.0 | |
proc-macro2@1.0.78 | |
quick-xml@0.28.2 | |
quick-xml@0.30.0 | |
quote@1.0.35 | |
rand@0.7.3 | |
rand@0.8.5 | |
rand_chacha@0.2.2 | |
rand_chacha@0.3.1 | |
rand_core@0.5.1 | |
rand_core@0.6.4 | |
rand_hc@0.2.0 | |
raw-window-handle@0.5.2 | |
raw-window-handle@0.6.0 | |
redox_syscall@0.3.5 | |
redox_syscall@0.4.1 | |
redox_users@0.4.4 | |
regex-automata@0.4.5 | |
regex-syntax@0.8.2 | |
regex@1.10.3 | |
ring@0.17.7 | |
rmp@0.8.12 | |
rmpv@1.0.1 | |
rustc-demangle@0.1.23 | |
rustc-hash@1.1.0 | |
rustix@0.38.30 | |
rustls-webpki@0.101.7 | |
rustls@0.21.10 | |
rustversion@1.0.14 | |
ryu@1.0.16 | |
same-file@1.0.6 | |
scoped-env@2.1.0 | |
scoped-tls@1.0.1 | |
scopeguard@1.2.0 | |
sct@0.7.1 | |
sctk-adwaita@0.8.1 | |
serde@1.0.196 | |
serde_derive@1.0.196 | |
serde_json@1.0.112 | |
serde_spanned@0.6.5 | |
serial_test@2.0.0 | |
serial_test_derive@2.0.0 | |
shlex@1.3.0 | |
signal-hook-registry@1.4.1 | |
simd-adler32@0.3.7 | |
simple_moving_average@0.1.2 | |
siphasher@0.3.11 | |
skia-bindings@0.68.0 | |
skia-safe@0.68.0 | |
slab@0.4.9 | |
smallvec@1.13.1 | |
smithay-client-toolkit@0.16.1 | |
smithay-client-toolkit@0.18.0 | |
smithay-clipboard@0.6.6 | |
smol_str@0.2.1 | |
socket2@0.5.5 | |
spin@0.9.8 | |
spin_sleep@1.2.0 | |
strict-num@0.1.1 | |
strsim@0.10.0 | |
strum@0.25.0 | |
strum_macros@0.25.3 | |
swash@0.1.8 | |
syn@1.0.109 | |
syn@2.0.48 | |
tar@0.4.40 | |
termtree@0.4.1 | |
thiserror-impl@1.0.56 | |
thiserror@1.0.56 | |
time-macros@0.2.4 | |
time@0.3.9 | |
tiny-skia-path@0.11.3 | |
tiny-skia@0.11.3 | |
tinyvec@1.6.0 | |
tinyvec_macros@0.1.1 | |
tokio-io@0.1.13 | |
tokio-macros@2.2.0 | |
tokio-util@0.7.10 | |
tokio@1.35.1 | |
toml@0.5.11 | |
toml@0.7.8 | |
toml@0.8.8 | |
toml_datetime@0.6.5 | |
toml_edit@0.19.15 | |
toml_edit@0.21.0 | |
tracing-core@0.1.32 | |
tracing@0.1.40 | |
tracy-client-sys@0.22.1 | |
ttf-parser@0.20.0 | |
unicode-bidi@0.3.15 | |
unicode-ident@1.0.12 | |
unicode-normalization@0.1.22 | |
unicode-segmentation@1.10.1 | |
untrusted@0.9.0 | |
ureq@2.9.1 | |
url@2.5.0 | |
utf8parse@0.2.1 | |
version_check@0.9.4 | |
walkdir@2.4.0 | |
wasi@0.11.0+wasi-snapshot-preview1 | |
wasi@0.9.0+wasi-snapshot-preview1 | |
wasm-bindgen-backend@0.2.90 | |
wasm-bindgen-futures@0.4.40 | |
wasm-bindgen-macro-support@0.2.90 | |
wasm-bindgen-macro@0.2.90 | |
wasm-bindgen-shared@0.2.90 | |
wasm-bindgen@0.2.90 | |
wayland-backend@0.1.2 | |
wayland-backend@0.3.2 | |
wayland-client@0.29.5 | |
wayland-client@0.30.2 | |
wayland-client@0.31.1 | |
wayland-commons@0.29.5 | |
wayland-csd-frame@0.3.0 | |
wayland-cursor@0.29.5 | |
wayland-cursor@0.31.0 | |
wayland-protocols-plasma@0.2.0 | |
wayland-protocols-wlr@0.2.0 | |
wayland-protocols@0.29.5 | |
wayland-protocols@0.31.0 | |
wayland-scanner@0.29.5 | |
wayland-scanner@0.30.1 | |
wayland-scanner@0.31.0 | |
wayland-sys@0.29.5 | |
wayland-sys@0.30.1 | |
wayland-sys@0.31.1 | |
web-sys@0.3.67 | |
web-time@0.2.4 | |
webpki-roots@0.25.3 | |
which@4.4.2 | |
winapi-i686-pc-windows-gnu@0.4.0 | |
winapi-util@0.1.6 | |
winapi-wsapoll@0.1.1 | |
winapi-x86_64-pc-windows-gnu@0.4.0 | |
winapi@0.3.9 | |
windows-sys@0.45.0 | |
windows-sys@0.48.0 | |
windows-sys@0.52.0 | |
windows-targets@0.42.2 | |
windows-targets@0.48.5 | |
windows-targets@0.52.0 | |
windows_aarch64_gnullvm@0.42.2 | |
windows_aarch64_gnullvm@0.48.5 | |
windows_aarch64_gnullvm@0.52.0 | |
windows_aarch64_msvc@0.42.2 | |
windows_aarch64_msvc@0.48.5 | |
windows_aarch64_msvc@0.52.0 | |
windows_i686_gnu@0.42.2 | |
windows_i686_gnu@0.48.5 | |
windows_i686_gnu@0.52.0 | |
windows_i686_msvc@0.42.2 | |
windows_i686_msvc@0.48.5 | |
windows_i686_msvc@0.52.0 | |
windows_x86_64_gnu@0.42.2 | |
windows_x86_64_gnu@0.48.5 | |
windows_x86_64_gnu@0.52.0 | |
windows_x86_64_gnullvm@0.42.2 | |
windows_x86_64_gnullvm@0.48.5 | |
windows_x86_64_gnullvm@0.52.0 | |
windows_x86_64_msvc@0.42.2 | |
windows_x86_64_msvc@0.48.5 | |
windows_x86_64_msvc@0.52.0 | |
winit@0.29.10 | |
winnow@0.5.35 | |
winres@0.1.12 | |
x11-clipboard@0.7.1 | |
x11-dl@2.21.0 | |
x11rb-protocol@0.10.0 | |
x11rb-protocol@0.13.0 | |
x11rb@0.10.1 | |
x11rb@0.13.0 | |
xattr@1.3.1 | |
xcursor@0.3.5 | |
xdg@2.5.2 | |
xkbcommon-dl@0.4.1 | |
xkeysym@0.2.0 | |
xml-rs@0.8.19 | |
yazi@0.1.6 | |
zeno@0.2.3 | |
zerocopy-derive@0.7.32 | |
zerocopy@0.7.32 | |
" | |
inherit cargo desktop toolchain-funcs xdg-utils | |
# Bumping guid | |
# --- Getting the dependencies for CRATES: | |
# 1. clone git@github.com:neovide/neovide.git | |
# 2. run ./pycargoebuild ./ in that directory | |
# 3. CRATES variables will be in generated ebuild | |
# | |
# --- Getting the commits below | |
# 1. find in neovides cargo.toml which version of skia-safe us used | |
# 2. go to https://github.com/rust-skia/rust-skia/tags and browse the files of that version | |
# 3. note the commit of the skia directory | |
# 3. click on the skia directory which links to https://github.com/rust-skia/skia/tree/somecommit | |
# 4. browse the releases page for the corresponding tag for that noted commit | |
# 5. browse the files of that tag | |
# 6. open the file DEPS | |
# 7. it contains a line that specifies the commit of wuff used. | |
SKIA_PV="m119-0.67.3" | |
WUFF_COMMIT="e3f919ccfe3ef542cfc983a82146070258fb57f8" | |
DESCRIPTION="Neovide: No Nonsense Neovim Gui" | |
HOMEPAGE="https://neovide.dev/" | |
SRC_URI=" | |
https://github.com/neovide/neovide/archive/${PV}.tar.gz -> ${P}.tar.gz | |
https://codeload.github.com/rust-skia/skia/tar.gz/${SKIA_PV} -> skia-${SKIA_PV}.tar.gz | |
https://github.com/google/wuffs-mirror-release-c/archive/${WUFF_COMMIT}.tar.gz -> wuffs-${WUFF_COMMIT}.tar.gz | |
${CARGO_CRATE_URIS} | |
" | |
LICENSE="MIT" | |
LICENSE+=" | |
Apache-2.0 BSD-2 BSD Boost-1.0 CC0-1.0 ISC LGPL-3 MIT MPL-2.0 | |
Unicode-DFS-2016 | |
" | |
SLOT="0" | |
KEYWORDS="~amd64" | |
RDEPEND=" | |
media-libs/fontconfig | |
media-libs/freetype | |
dev-libs/expat | |
dev-libs/icu:= | |
media-libs/harfbuzz:= | |
media-libs/libjpeg-turbo:= | |
media-libs/libpng:= | |
sys-libs/zlib | |
" | |
DEPEND="${RDEPEND}" | |
BDEPEND=" | |
dev-build/gn | |
sys-devel/clang | |
" | |
# rust does not use *FLAGS from make.conf, silence portage warning | |
QA_FLAGS_IGNORED="usr/bin/.*" | |
src_unpack() { | |
cargo_src_unpack | |
mkdir -p "${WORKDIR}"/skia-"${SKIA_PV}"/third_party/externals/ || die | |
ln -s "${WORKDIR}"/wuffs-mirror-release-c-"${WUFF_COMMIT}" "${WORKDIR}"/skia-"${SKIA_PV}"/third_party/externals/wuffs || die | |
} | |
src_prepare() { | |
eapply_user | |
cargo_src_configure | |
sed -i "${S}/Cargo.toml" -e 's/strip = true/strip = false/' | |
export SKIA_SOURCE_DIR="${WORKDIR}/skia-m119-0.67.3" | |
export SKIA_GN_COMMAND="gn" | |
export SKIA_NINJA_COMMAND="ninja" | |
export SKIA_USE_SYSTEM_LIBRARIES="true" | |
pushd "${WORKDIR}" || die | |
# remove this if next version uses newer skia-bindings | |
eapply "${FILESDIR}/${P}_skia-bindings-0.68.0_system_icu.patch" | |
if [[ $(tc-getCC) == "gcc" || $(tc-getCXX) == "g++" ]]; then | |
eapply "${FILESDIR}/${P}_skia-bindings-0.68.0_gcc.patch" | |
fi | |
} | |
src_install() { | |
cargo_src_install | |
domenu assets/neovide.desktop | |
newicon assets/neovide.svg neovide | |
} | |
pkg_postinst() { | |
xdg_desktop_database_update | |
} | |
pkg_postrm() { | |
xdg_desktop_database_update | |
} | |
Newer versions of skia-bindgen only look for icu.ninja, when SKIA_USE_SYSTEM_LIBRARIES is not set. | |
This patch is backporting that fix to skia-bindgen-0.68.0. | |
In the gentoo ebuild we always build skia against system libs, therefore we just delete that line here. | |
Pascal Jäger <pascal.jaeger@leimstift.de> (2024-04-02) | |
--- a/cargo_home/gentoo/skia-bindings-0.68.0/build_support/skia_bindgen.rs | |
+++ b/cargo_home/gentoo/skia-bindings-0.68.0/build_support/skia_bindgen.rs | |
@@ -811,7 +811,8 @@ pub(crate) mod definitions { | |
"obj/modules/skshaper/skshaper.ninja".into(), | |
"obj/modules/skparagraph/skparagraph.ninja".into(), | |
// shaper.cpp includes SkLoadICU.h | |
- "obj/third_party/icu/icu.ninja".into(), | |
+ // gentoo build uses systems dev-libs/icu | |
+ /* "obj/third_party/icu/icu.ninja".into(), */ | |
"obj/modules/skunicode/skunicode.ninja".into(), | |
]); | |
} | |
Skia-bindings sets --target regardless of which CC/CXX is used. GCC does not understand the argument --target | |
Pascal Jäger <pascal.jaeger@leimstift.de> (2024-04-03) | |
--- a/cargo_home/gentoo/skia-bindings-0.68.0/build_support/platform.rs | |
+++ b/cargo_home/gentoo/skia-bindings-0.68.0/build_support/platform.rs | |
@@ -129,7 +129,7 @@ impl GnArgsBuilder { | |
if let Some(target) = &self.target_str { | |
let target = format!("--target={target}"); | |
- self.cflag(&target); | |
+ //self.cflag(&target); | |
asmflags.push(target); | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment