Powered by RND
Lyssna på Full Time Nix i appen
Lyssna på Full Time Nix i appen
(2 266)(249 698)
Spara kanal
väckarklocka
Sleeptimer

Full Time Nix

Podcast Full Time Nix
Shahar "Dawn" Or
Long conversations with clever Nixers

Tillgängliga avsnitt

5 resultat 45
  • Stable linking with Farid Zakaria
    Summary (generated)In this conversation, Shahar "Dawn" Or interviews Farid Zakaria, a software engineer and PhD candidate, about his experiences with Nix, a powerful tool for reproducible software development. Farid shares his journey of learning Nix, its infectious nature, and its application in enterprise environments. He discusses the concept of innovation tokens, the challenges of teaching Nix, and how it has influenced his PhD research. The conversation also delves into dynamic linking, performance improvements, and the potential of Nix as a research platform. In this conversation, Farid Zakaria discusses the challenges and innovations in software performance, particularly focusing on application start-up times and the implications of dynamic versus static linking. He introduces the concept of stable linking, which aims to enhance software responsiveness and security while addressing historical decisions in software development. The discussion also touches on the potential for broader applications beyond C/C++, the importance of auditing in software, and the cultural shifts needed in the software development community to adopt these innovations.Takeaways (generated)Nix empowers reproducible software development.The journey to learning Nix can be challenging but rewarding.Nix is increasingly being adopted in enterprise environments.Innovation tokens are crucial for evaluating new technologies.Teaching Nix effectively requires understanding its practical applications.Nix can significantly improve development environments.Dynamic linking presents unique challenges that Nix can address.Nix allows for performance optimizations in software applications.Nix serves as a valuable research platform for PhD candidates.The community around Nix is diverse and supportive.Application start-up times can be significantly improved with optimization techniques.Reducing the number of symbols in applications can lead to faster performance.Stable linking offers a way to enhance software security and performance.Dynamic linking has historical roots in resource constraints and code reuse.The future of software may see faster responsiveness across all applications.Auditing software for compatibility and security is crucial in modern development.Compiler innovations can lead to substantial speed improvements in software builds.C and C++ are not the only languages that can benefit from these linking techniques.Cultural shifts in the software community are necessary for adopting new practices.Practical implementation of stable linking could revolutionize how software is built and run.Chapters (generated)00:00 Introduction and Background02:14 Exploring Nix and Its Community05:00 The Transition from Hobbyist to Enterprise06:47 Nix's Infectious Nature and Deployment Challenges09:18 The Appeal of Nix for Development Environments11:48 Innovation Tokens and Nix's Value Proposition13:57 Bringing Nix to Looker and Google15:39 Teaching Nix and Overcoming Adoption Hurdles18:33 The Role of Nix in PhD Research21:04 Dynamic Linking and Performance Optimization23:41 Benchmarking and Results26:19 Conclusion and Future Directions48:14 The Impact of Speed on Software Development55:34 The Future of Dynamic Linking and Its Implications58:49 Stable Linking: A New Paradigm01:05:04 Revisiting the Rationale Behind Dynamic Linking01:11:15 Implementing Stable Linking in Nixpkgshttps://fzakaria.com/https://www.confluent.io/https://kafka.apache.org/https://bazel.build/https://www.ucsc.edu/https://fulltimenix.com/episodes/domen-kozarhttps://fulltimenix.com/episodes/jonathan-ringerhttps://edolstra.github.io/pubs/phd-thesis.pdfhttps://cloud.google.com/lookerhttps://www.youtube.com/watch?v=HGEY6ABQUBwhttps://www.youtube.com/watch?v=GkgsFbwYdYAhttps://www.youtube.com/watch?v=HZKFe4mCkr4https://www.youtube.com/watch?v=gQstiX7H8MQ&t=183shttps://spack.io/https://www.debian.org/https://fedoraproject.org/“apt-get mindset”https://brew.sh/https://nixos.org/manual/nixpkgs/unstable/#haskellhttps://nixos.org/manual/nixpkgs/unstable/#pythonhttps://man7.org/linux/man-pages/man8/ld.so.8.htmlhttps://github.com/nix-community/nix-ldhttps://supercomputing.org/https://github.com/fzakaria/shrinkwraphttps://github.com/NixOS/nixpkgs/pull/207061https://arxiv.org/abs/2501.06716How To Write Shared Libraries by Ulrich Drepperhttps://en.wikipedia.org/wiki/Address_space_layout_randomizationhttps://en.wikipedia.org/wiki/Global_Offset_Tablehttps://clang.llvm.org/https://www.openoffice.org/https://en.wikipedia.org/wiki/Network_File_Systemhttps://en.wikipedia.org/wiki/Epychttps://en.wikipedia.org/wiki/NVM_Expresshttps://musl.libc.org/https://www.alpinelinux.org/https://cve.mitre.org/https://github.com/openssl/openssl#overviewhttps://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standardhttps://en.wikipedia.org/wiki/Executable_and_Linkable_Formathttps://nixos.org/manual/nixpkgs/unstable/#setup-hook-autopatchelfhookhttps://guix.gnu.org/
    --------  
    1:18:07
  • Remote builders and stores, nixbuild.net with Rickard Nilsson
    https://cache.nixos.orghttps://nixbuild.net/https://nix.dev/manual/nix/2.26/store/types/https://www.cachix.org/https://nix.dev/manual/nix/2.26/development/experimental-features.html#xp-feature-dynamic-derivationshttps://nix.dev/manual/nix/2.26/development/experimental-features.html#xp-feature-ca-derivationshttps://lix.systems/https://tvix.dev/https://github.com/ngi-nix/summer-of-nixhttps://nixos.org/community/teams/nix/https://github.com/Ericson2314https://www.haskell.org/https://slurm.schedmd.com/https://planetnix.com/Generated chapters:00:00 Introduction to Nix and Remote Building02:38 Understanding Nix Daemon and Communication Protocols05:01 Exploring Derivations and Their Role in Nix07:26 Setting Up Remote Builders in Nix09:48 Remote Building Process and Configuration12:08 Remote Store vs Remote Builder Features14:21 Managing Build Outputs and Dependencies16:45 Optimizing Remote Builds and Scheduling19:28 Conclusion and Future Improvements24:16 Understanding Remote Store Features24:43 Continuous Integration (CI) Workflows26:37 Leveraging Remote Builders in CI29:20 Exploring Nix Store Components35:26 The Role of Substitutes in Nix40:48 Introducing nixbuild.net: A Solution for Nix Builds50:15 The Power of Concurrency in Build Services54:11 Choosing nixbuild.net for Efficient Builds55:17 Understanding Latency and On-Site Options59:29 Hardware and Architectures for Nix Builds01:01:37 When to Consider nixbuild.net01:03:49 Managing Compatibility with Nix Versions01:06:22 The Nix Community and Company Dynamics01:07:59 Contributions to the Open Source Ecosystem01:16:28 Internal Stack and Resource Management01:21:05 Final Thoughts and Future Directions
    --------  
    1:21:43
  • Nix on macOS, nixpkgs for darwin, nix-darwin with Randy Eckenrode
    https://opensource.apple.com/releases/https://en.wikipedia.org/wiki/NeXTSTEPhttps://brew.sh/https://www.opengroup.org/openbrand/register/https://en.wikipedia.org/wiki/Property_listhttps://repology.org/repository/nix_unstablehttps://nixos.org/manual/nixpkgs/unstable/#chap-stdenvhttps://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removalsTracking issue for Darwin stdenv LLVM update:https://github.com/NixOS/nixpkgs/issues/234710I’d also credit reno and emilazy for driving the LLVM 19 upgrade. They used a few patches from a WIP Clang 18 branch I’d started over the summer, but they pushed the update over the finish line once breaking changes were allowed after the 24.11 release.https://en.wikipedia.org/wiki/Interface_Builderhttps://developer.apple.com/metal/https://developer.apple.com/xcode/https://github.com/facebookarchive/xcbuildhttps://ghostty.org/https://nixos.org/manual/nixpkgs/unstable/#deploying-a-proxy-component-wrapper-exposing-xcodeMacVim in nixpkgs:https://github.com/NixOS/nixpkgs/blob/50784a2835c150d6055861a5ad703a57b8070cbb/pkgs/applications/editors/vim/macvim.nixhttps://github.com/orgs/NixOS/teams/darwin-corehttps://github.com/reckenrodehttps://github.com/emilazyhttps://github.com/toonnPR establishing the Darwin team:https://github.com/NixOS/nixpkgs/pull/348183https://developer.apple.com/documentation/corefoundationwhen Apple implemented this hardening, before it just happened to work. So, and this actually affected Nix because Nix uses the AWS C++ SDK and that stopped buildinghttps://github.com/NixOS/nixpkgs/pull/265102macOS 15 Sequoia clobbers _nixbld1-4 users:https://github.com/NixOS/nix/issues/10892https://github.com/DeterminateSystems/nix-installerhttps://fishshell.com/https://github.com/LnL7/nix-darwinFixing waifu2x-converter-cpp on Darwin:https://github.com/NixOS/nixpkgs/pull/135725Though it turns out my actually first nixpkgs PR was fixing vscode-lldb on Darwin:https://github.com/NixOS/nixpkgs/pull/131324https://github.com/KhronosGroup/MoltenVKLast year, Connor Baker created a draft PR to add the missing SDK.Connor Baker’s draft PR adding more SDKs:https://github.com/NixOS/nixpkgs/pull/229210https://www.vulkan.org/Darwin SDK PR (has links to my PRs fixing issues):https://github.com/NixOS/nixpkgs/pull/346043Discourse post with the SDK update announcement:https://discourse.nixos.org/t/the-darwin-sdks-have-been-updated/55295Here’s that list (by GitHub id). These people were all very helpful with ensuring these Darwin improvements made it to master.staging-next with the clang 16 update (tried to get everyone who contributed during that cycle; appologies if I missed anyone):AtemuanthonyrousselazuwisboltzmannrainemilytraujosephstjudofyrmfrischknechphiliptarontoonntrofiwegankDarwin SDK update. It turns out that in spite of radically changing the pattern, providing an SDK by default tends to just work.emilazykhanelimanpaparodeotoonnI also want to thank midchildan for contributing fixes to xcbuild to address some of the post-release issues users have encountered with having it in a dev shell by default. I also wanted to call out the great work getting Zed and Firefox building on Darwin with these SDK changes:niklaskorz (for Zed)booxter (for Firefox)https://github.com/apple-oss-distributionshttps://github.com/apple-oss-distributions/dyldNote that the source for ld-prime is actually removed from the distribution. I’d package it if it were there, but it’s not.https://github.com/LnL7/nix-darwinhttps://github.com/nix-community/home-managerAnother call for Darwin maintainers:https://github.com/NixOS/nixpkgs/issues/323144https://github.com/NixOS/rfcs/pull/112Generated chapters:00:00 Introduct...
    --------  
    1:31:35
  • Nix 2.24.11, 2.25.4, 2.24.12, 2.25.5, 2.26.0, 2.26.1 with Nix Team members
    https://github.com/NixOS/nix/releases/tag/2.24.11 https://github.com/NixOS/nix/releases/tag/2.25.4 https://github.com/NixOS/nix/releases/tag/2.24.12 https://github.com/NixOS/nix/releases/tag/2.26.0 https://github.com/NixOS/nix/releases/tag/2.26.1https://github.com/NixOS/nix/issues/6316https://github.com/NixOS/nix/pull/12045https://github.com/NixOS/rfcs/pull/132
    --------  
    47:18
  • Contributing to Nixpkgs, NixVim with Gaétan Lepage
    https://github.com/NixOS/nixpkgs/commits?author=GaetanLepagehttps://github.com/nix-community/nixvimhttps://ensimag.grenoble-inp.fr/enhttps://github.com/nix-community/nixvim/commits?author=traxyshttps://nixos.org/manual/nixpkgs/unstable/#pythonhttps://nix.dev/guides/recipes/python-environment.htmlhttps://wiki.nixos.org/wiki/Pythonhttps://github.com/NixOS/nixpkgs/tree/00c24cc9cabab1bb8828311a670242ac80dd2ac5/pkgs/development/python-modules/torchhttps://wiki.nixos.org/wiki/JAXhttps://github.com/NixOS/nixpkgs/tree/00c24cc9cabab1bb8828311a670242ac80dd2ac5/pkgs/development/python-modules/jaxhttps://wiki.nixos.org/wiki/Tensorflowhttps://github.com/NixOS/nixpkgs/blob/00c24cc9cabab1bb8828311a670242ac80dd2ac5/pkgs/development/python-modules/tensorflowhttps://github.com/NixOS/nixpkgs/blob/00c24cc9cabab1bb8828311a670242ac80dd2ac5/pkgs/development/python-modules/protobufhttps://github.com/NixOS/nixpkgs/issues/157398https://github.com/NixOS/rfcs/pull/166https://github.com/NixOS/rfcs/pull/140Some recent contributions by Gaétanhttps://github.com/NixOS/nixpkgs/pull/362844https://github.com/NixOS/nixpkgs/pull/363751https://github.com/Mic92/nixpkgs-review/pull/440https://github.com/NixOS/nixfmthttps://github.com/nix-community/nix-inithttps://github.com/ekala-projecthttps://github.com/jonringerhttps://github.com/nrdxphttps://github.com/nix-community/nixvimhttps://github.com/nix-community/home-managerPedro Alveshttps://github.com/pta2002https://github.com/traxyshttps://github.com/MattSturgeonhttps://github.com/khanelimanhttps://github.com/nix-community/nixvim/graphs/contributorsNixvim: Configure Neovim with the power of Nix (NeovimConf 2023): https://youtu.be/GOe0C7Qtypk?si=T9gd0evaS8W3HvG-```nix run github:mightyiam/infra#nixvim```https://github.com/folke/lazy.nvimhttps://github.com/nvim-neorocks/lz.nGenerated chapters:00:00 Introduction to the Podcast and Guest06:15 Understanding NixOS Use Cases11:53 The Contribution Process Explained25:22 Nixpkgs Review Tool and CI Challenges34:26 Infrastructure and CI Limitations38:37 Transitioning to GitHub Actions45:07 Multi-System Evaluation Explained50:32 Contributions to Python Packages58:08 Challenges in Nix Packages01:02:27 Recent Progress in Nixpkgs01:07:53 NixVim Features and Benefits01:11:22 Gaétan's Involvement in NixVim01:19:33 NixVim: Configuration vs Distribution01:23:44 NixVim Options and Flexibility01:26:27 Plugin Management in NixVim01:29:27 Settings and Configuration Options01:32:06 Keeping Up with Plugin Changes01:37:24 User Contributions and Community Engagement01:44:13 Future Perspectives for NixVim
    --------  
    1:49:49

Fler podcasts i Teknologi

Om Full Time Nix

Long conversations with clever Nixers
Podcast-webbplats

Lyssna på Full Time Nix, En AI till Kaffet och många andra poddar från världens alla hörn med radio.se-appen

Hämta den kostnadsfria radio.se-appen

  • Bokmärk stationer och podcasts
  • Strömma via Wi-Fi eller Bluetooth
  • Stödjer Carplay & Android Auto
  • Många andra appfunktioner
Sociala nätverk
v7.13.1 | © 2007-2025 radio.de GmbH
Generated: 4/4/2025 - 9:46:30 PM