Files
vimix/docs/notes.md
2025-12-24 08:52:41 +01:00

3.3 KiB

Various Notes and reminders

Copyright 2024 Bruno Herbelin

Publishing new a release

Mac OSX specificities

  • Settings are saved in /Users/[username]/Library/Application Support/vimix Instructions to reset in finder, do "Go to folder" (shift+command+G), enter /Users/[username]/Library/Application Support/vimix and delete the folder 'vimix'

  • POST INSTALL DMG SIGNING AND NOTARIZATION

  1. SIGN DMG

    codesign --force --sign "Developer ID Application: <identityIdentifier>" <pathToDMG>
    

    verify with:

    codesign --verify --verbose=2 <pathToDMG>
    
  2. SUBMIT TO NOTARIZATION

    xcrun notarytool submit <pathToDMG> --keychain-profile "vimix" --wait
    

    verify with:

    xcrun notarytool log xxxx-xxxx-xxx  --keychain-profile "vimix"
    

    NB: "vimix" is the name of the app-specific password in keychain generated online: https://support.apple.com/en-us/102654

  3. STAPLE THE TICKET TO THE DISK IMAGE

    xcrun stapler staple <pathToDMG>
    
  4. VERIFY NOTARIZATION

    spctl -a -vv -t install <pathToDMG>
    

    NB: more info at https://wiki.lazarus.freepascal.org/Notarization_for_macOS_10.14.5%2B

flatpack Development

The flatpak manifest for flathub is at https://github.com/flathub/io.github.brunoherbelin.Vimix

To build the vimix flatpak with code from local folder (debugging), change the following:

{
    "name": "vimix",
    "buildsystem": "cmake",
    "config-opts": [
        "-DCMAKE_BUILD_TYPE=Release"
    ],
    "sources": [
        {
        "type":"dir",
        "path": "[your_development_dir]/vimix",
        }
    ]
}

Testing performance

Linux perf command

  • Allow perf on your system

    sudo sysctl -w kernel.perf_event_paranoid=-1
    
  • Launch command to record

    perf record ./vimix
    perf record --pid=XXXXX
    

    e.g.;

    __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia   perf record --call-graph dwarf ./build/src/vimix
    
  • Analyse using https://github.com/KDAB/hotspot

Memcheck

To generate memory usage plots in massif format:

G_SLICE=always-malloc valgrind --tool=massif ./vimix

To check for memory leaks:

G_SLICE=always-malloc valgrind --leak-check=full --log-file=vimix_mem.txt ./vimix