zulu-zsh / zulu Goto Github PK
View Code? Open in Web Editor NEWTotal environment manager for ZSH
Home Page: https://zulu.molovo.co
License: MIT License
Total environment manager for ZSH
Home Page: https://zulu.molovo.co
License: MIT License
Uninstalling the revolver package causes the revolver process to be orphaned, leaving the spinner running infinitely.
Can be resolved by checking for the PID file at ~/.revolver/$PID
within the polyfill function and removing it if the file exists but revolver is not installed.
There seems to be an issue with the new zui
and zbrowse
packages. Installing zui
on its own works, but when it is installed as a dependency of zbrowse
it tries to clone the repository molovo/zui
rather than the correct zdharma/zui
.
Affects both master
and next
branches.
After doing my 6 months self-update the substring search plugin stopped working.
This can be disabled in config file (requires #66), to protect user privacy.
Need to find a (free) provider with a flexible enough API to record events using curl
command from the CLI
If a package is set to a specific branch/tag using zulu install --branch <branch> <package>
, the requested branch or tag is not saved to the packagefile alongside the package name. This means that when syncing, a package can be installed with a specific branch on one machine, but when zulu bundle
is run on another synced machine, it will use the master
branch, rather than the correct one.
Currently the upgrade
command is very slow, as it has to perform a fetch on each package repository before it can check for changes.
One possibility might be asynchronously fetching from each of the repositories on init, and keeping a log of the last fetch timestamp for each of them, then only performing the fetch again if the fetch is older than x amount of time (probably an hour should be enough).
Any ideas welcome.
Add a --branch
option to specify the branch that should be checked out after a package has been installed.
e.g.
zulu install zunit --branch next
Zulu was built to support syncing environment configuration between different machines, but this has always been an external process. Would be nice to add a sync
command, which pushes the contents of ~/.config/zulu
to a git repository, and pulls changes.
Adding a --sync
option to zulu init
to automatically pull changes to the repository on startup would be a nice touch too.
If I load zulu, when I press tab and there are multiple options, part of the spaceship prompt gets erased.
Tested using the latest versions of everything: zsh, prezto, zgen, zulu and spaceship prompt
The polyfill currently prints out the message that would be displayed next to the spinner if revolver were installed, but these are then left in the output. Would be cleaner to just use an empty function instead of printing the message so that only success/error messages are left in the output.
Could be dangerous if a package maintainer decides to take advantage of it. Bearing in mind there aren't any packages that actually require this yet, it can be removed
Zulu currently breaks (on install and usage) in 5.0.7 which is the default for most Mac and Linux installations. Currently only 5.1+ is supported, but we should aim to change this
While trying to install I get the following error:
/Users/abecchis/.zulu/core/zulu
/Users/abecchis/.zulu/core/zulu:2355: parse error near `>&'
/Users/abecchis/.zshrc:335: command not found: zulu
zsh --version
zsh 5.1.1 (x86_64-apple-darwin15.0.0)
I cannot install or upgrade packages after updating zulu to 1.4.0.
zulu install filthy
Failed to clone repository
✘ Error installing filthy
Cloning into 'filthy'...
fatal: I don't handle protocol 'repository: https'
I see reference to a git problem with invisible unicode characters but I don't know if it's related.
Running zulu bundle --dump
or zulu bundle --dump --force
fails with the following error message:
_zulu_bundle_dump:local:1: not valid in this context: command-not-found
At the moment zulu update
downloads changes to the index silently. It would be nice to show which packages are new or have been updated to improve discovery of new packages.
Site from readme is down.
This site can’t be reached
zulu.sh’s server IP address could not be found.
DNS_PROBE_FINISHED_NXDOMAIN
The zulu list
command has become quite slow, which makes completion output very slow when the completion cache is empty. Should look into improving its performance.
Config can be loaded from ~/.config/zulu/config.yml
, and a new zulu config
can be used for setting and displaying values.
Hi @molovo,
I have created some plugins (zulu-
prefixed) and published them under my github
account. If you wanna have a look and decide that they can make it to the official zulu
distro, let me know and I will prepare them accordingly (documentation, comments etc). I keep their respective index files locally though, happy to provide them in any case.
Cheers!
Running the zulu upgrade
command kills the current session, although the command completes successfully
I'd like to take another look at designing a logo for Zulu. The current icon is just something I found quickly on The Noun Project. Would be nice to have something unique, and then I'll look at some changes to the website to incorporate it.
before running zulu upgrade
, I was using agnoster as my theme. however, zulu change the theme to default theme after zulu upgrade
.
this also reminds me there's no auto-completion when I pressing tab
after zulu theme
Add the ability to specify a 'post_install' key in a package's index JSON file, which will be executed after zulu link
is run on the package.
This is required for zunit-zsh/zunit#47
ZUnit has a make
step as part of it's install process. Would be handy for this and other packages to support simple post-install scripts within the index file
Hi there, wishes for happy holidays!
I have noticed that the completions index references a 'completion' type.
Is this functionality of a private nature and thus didn't make it to the index docs?
When installing Zulu for the first time, I got this error in the installation process:
[...]
✔ Build script complete
HEAD is now at b91f492ddb96 Ensure default branch is used unless specified
Failed to reset Zulu repository
And every time I open a Terminal window/tab, I get the same error.
This said, when browsing and checking the git status of /core/
and /index/
in the ZULU_DIR, both seem to be correctly synced to upstream master
.
Is there an option to install package from git directly rather than adding it to index before?
For example, the fzf
and history-search-multi-word
packages both define the same CTRL-R
keybinding. When installing either package it should warn the user of this. These can be defined in the index files.
Running the initialization script will prompt the following error message:
zulu init ✔ Switched to Zulu master _zulu_init_setup_completion:9: compinit: function definition file not found _zulu_init:61: promptinit: function definition file not found zsh: prompt: command not found...
then autocompletion fails with
expand-or-complete-with-indicator:3: _main_complete: function definition file not found
Hi,
I was wondering whether the _zulu_init_setup_history
function in the init
command is respecting the order that zsh-history-substring-search
is sourced, in case the zsh-syntax-highlighting
package is also installed.
I came down to this sort of investigation after struggling with the zsh-history-substring-search
itself: To my understanding, if you have installed it, it will be loaded with the rest of the packages after the _zulu_init_setup_history
-- which will exit unless the widget is defined. However, this will be defined during the package load. I had to source the zsh-history-substring-search
before line 175. Have you noticed that or am I totally losing it?
In any case, you have build a very comprehensive framework here, lightweight and pretty much extensible.
Thanks! Happy new year!
Completion for zulu uninstall
, zulu upgrade
, zulu link
and zulu unlink
all have an issue where the description and the package name are merged strangely
At some point they stopped being installed when the parent package is installed. Need to fix this.
Now that zulu is compiled it makes it frustrating to develop on zulu itself. Adding a --dev
flag to init which re-sources commands when called would make this easier.
zulu install
without arguments currently installs the contents of the package file. It throws errors for packages which are already installed, which we should keep when the name of an installed package is passed via the CLI.
Proposing a zulu bundle
command a la @Homebrew for dealing with installing packages from the package file, so that this and other configuration can still be synced.
Usage:
zulu bundle
- install all packages from packagefilezulu bundle --cleanup
- uninstall any packages not included in the packagefilezulu bundle --dump
- dump all installed packages to packagefileThe zulu self-update
command fails in Zulu 1.4.0 (pre-release: #82) on some Ubuntu versions due to out of memory errors, probably caused by the asynchronous processes.
I would like to know how the loading and initialization of packages and functions work. Is there any documentation on that?
whenever I uninstall a package, the corresponding init file is not unlinking itself.
I had to manually run the unlink command initially and then uninstall the package or delete the file manually.
I see the code for unlinking is there, not sure why not happening though
realpath
isn't avaliable on all systems, so we should replace it with readlink
. Need to be careful, as readlink
returns false for directories, so need to find something supportable to use in the zulu link
function.
This got left out of v1.0, investigating putting it back in now. Hopefully will help with debugging issues. Will log critical errors and above by default, and everything else with a --verbose
flag on init.
I've got two branches open currently to look into this:
experimenting_with_compiling
moves the core into a src
folder, and adds a build script which concatenates the entire source into a single file, and then runs zcompile on it. It also compiles all executable scripts and autoloadable functions in packages when they are linked.experimenting_with_lazy_loading
simply defers the loading of internal commands until they are called, rather than loading them on zulu init
.I would have expected both the above methods to have had some effect on startup time, but actually they both made it slower, which surprised me. If anyone has any ideas on how either of the above methods could be used to improve performance (or any other suggestions), please let me know.
The command appears to work as it should locally, so need to work out why the tests for it are failing.
Investigate adding a --beta
flag on init, which will check the current branch and checkout the latest pre-release tag if not already checked out.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.