Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Not working #412

Open
nothingnesses opened this issue Aug 24, 2018 · 1 comment
Open

Not working #412

nothingnesses opened this issue Aug 24, 2018 · 1 comment

Comments

@nothingnesses
Copy link

nothingnesses commented Aug 24, 2018

Hi. I am using Firefox 61.0.2 on Void Linux and have installed pyllyukko/user.js as a system-wide autoconfig, but it doesn't seem to be changing Firefox's settings in about:config. I installed it using the following script for the ion shell:

#	make pyllyukko directory if it doesn't exist already
fn mkdir_pyllyukko dir_pyllyukko
	if not exists -d $dir_pyllyukko
		echo Creating \"$dir_pyllyukko\"...
		mkdir -p $dir_pyllyukko
		echo
	end
end

#	clone or pull user.js
fn git_user_js dir_user_js dir_pyllyukko
	if not exists -d $dir_user_js
		git -C $dir_pyllyukko clone https://github.com/pyllyukko/user.js.git
	else
		echo Checking if \"$dir_user_js\" is up to date...
		git -C $dir_user_js pull
	end
	echo
end

#	make systemwide_user.js
fn make_systemwide_user_js dir_user_js
	make -C $dir_user_js systemwide_user.js
#	add "//" to top as suggested in readme, not needed though as it already has one
#	sed -i '1i\/\/' $dir_user_js/systemwide_user.js
	echo
end

#	make firefox directory if it doesn't exist already
fn mkdir_firefox dir_firefox
	if not exists -d $dir_firefox
#		if not exists -d /etc/firefox
		echo Creating \"$dir_firefox\"...
		sudo mkdir -p $dir_firefox
#		sudo mkdir -p /etc/firefox
		echo
	end
end

#	symbolically link systemwide_user.js
fn ln_systemwide_user_js dir_firefox dir_user_js
	if not exists -f $dir_firefox/mozilla.cfg
#	if not exists -f /etc/firefox/syspref.js

		echo Linking \"$dir_user_js/systemwide_user.js\" to \"$dir_firefox/mozilla.cfg\"
		sudo ln -s $dir_user_js/systemwide_user.js $dir_firefox/mozilla.cfg
#		sudo ln -s $dir_user_js/systemwide_user.js /etc/firefox/syspref.js
		echo
	end
end

#	make preferences directory if it doesn't exist already
fn mkdir_preferences dir_preferences
	if not exists -d $dir_preferences
		echo Creating \"$dir_preferences\"...
		sudo mkdir -p $dir_preferences
		echo
	end
end

#	make autoconfig.js if it doesn't exist already
fn make_autoconfig_js dir_preferences
	if not exists -f $dir_preferences/autoconfig.js
		echo "pref(\"general.config.filename\", \"mozilla.cfg\");" | sudo tee $dir_preferences/autoconfig.js
		echo "pref(\"general.config.obscure_value\", 0);" | sudo tee -a $dir_preferences/autoconfig.js
		echo
	end
end

#	update pyllyukko/user.js
fn update_pyllyukko dir_pyllyukko dir_user_js dir_firefox dir_preferences
	mkdir_pyllyukko $dir_pyllyukko
	git_user_js $dir_user_js $dir_pyllyukko
	make_systemwide_user_js $dir_user_js
	mkdir_firefox $dir_firefox
	ln_systemwide_user_js $dir_firefox $dir_user_js
	mkdir_preferences $dir_preferences
	make_autoconfig_js $dir_preferences
end

#	main
fn main
	let dir_pyllyukko = "/data/github/pyllyukko"
	let dir_user_js = "$dir_pyllyukko/user.js"
	let dir_firefox = "/usr/lib/firefox"
	let dir_preferences = "$dir_firefox/browser/defaults/preferences"

	update_pyllyukko $dir_pyllyukko $dir_user_js $dir_firefox $dir_preferences
end

main

My script seems to have installed user.js correctly (as based on this documentation). It managed to create /usr/lib/firefox/browser/defaults/preferences/autoconfig.js containing:

pref("general.config.filename", "mozilla.cfg");
pref("general.config.obscure_value", 0);

and also /usr/lib/firefox/mozilla.cfg which is a symlink to systemwide_user.js generated from the Makefile. Nonetheless, none of the settings in systemwide_user.js seems to have been applied when I check in about:config. I even tried using /usr/lib/firefox/defaults/pref instead of /usr/lib/firefox/browser/defaults/preferences, symlinking systemwide_user.js to /etc/firefox/syspref.js instead, and also deleting the Firefox profile (after every change I made), none of which solved the issue. As such, I'd really appreciate any help.

For what it's worth, I'm using a script to update and set pyllyukko/user.js as a system-wide autoconfig instead of just copying it manually as a single-user user.js as I want to change some of its default settings (using a user.js file later on), yet still be able to update it from the repo without git complaining of new changes I made causing conflicts or whatever, so if there is an easier way to do this (i.e., change settings and still be able to update it), please let me know. I feel like it could probably be done much simpler using a script that maybe pulls changes from the repo then rebases any changes i made automatically (is that the correct term?), but unfortunately I don't understand how to use git farther than cloning and pulling 😭 😂.

@Atavic
Copy link

Atavic commented Sep 24, 2018

Similar issues were solved by appending the entries to the existing user.js
Is your script working on files and dirs that have proper permissions (done with chmod command)?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants