mirror of
				https://github.com/jlu5/PyLink.git
				synced 2025-11-04 17:07:31 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			159 lines
		
	
	
		
			5.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			159 lines
		
	
	
		
			5.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
# This is a sample configuration file for PyLink. You'll likely want to rename it to config.yml
 | 
						|
# and begin your configuration there.
 | 
						|
 | 
						|
# Note: lines starting with a "#" are comments and will be ignored.
 | 
						|
 | 
						|
bot:
 | 
						|
    # Sets nick, user/ident, and real name.
 | 
						|
    nick: pylink
 | 
						|
    user: pylink
 | 
						|
    realname: PyLink Service Client
 | 
						|
 | 
						|
    # Server description (shown in /links, /whois, etc.)
 | 
						|
    serverdesc: PyLink Server
 | 
						|
 | 
						|
    # Console log verbosity: see https://docs.python.org/3/library/logging.html#logging-levels
 | 
						|
    loglevel: DEBUG
 | 
						|
 | 
						|
    # Fantasy command prefix, if the fantasy plugin is loaded.
 | 
						|
    prefix: "."
 | 
						|
 | 
						|
login:
 | 
						|
    # PyLink administrative login - Change this, or the service will not start!
 | 
						|
    user: admin
 | 
						|
    password: changeme
 | 
						|
 | 
						|
relay:
 | 
						|
    # This block defines various options for the Relay plugin. You don't need this
 | 
						|
    # if you aren't using it.
 | 
						|
 | 
						|
    # Determines whether remote opers will have user mode +H (hideoper) set on them.
 | 
						|
    # This has the benefit of lowering the oper count in /lusers and /stats (P|p),
 | 
						|
    # but only on IRCds that supported the mode.
 | 
						|
    # It defaults to true if not set.
 | 
						|
    hideoper: true
 | 
						|
 | 
						|
    # Determines whether real IPs should be sent across the relay. You should
 | 
						|
    # generally have a consensus with your linked networks whether this should
 | 
						|
    # be turned on. You will see other networks' user IP addresses, and they
 | 
						|
    # will see yours.
 | 
						|
    show_ips: false
 | 
						|
 | 
						|
    # Whether subservers should be spawned for each relay network (requires reload to change).
 | 
						|
    # Defaults to true.
 | 
						|
    spawn_servers: true
 | 
						|
 | 
						|
servers:
 | 
						|
    yournet:
 | 
						|
        # Server IP, port, and passwords
 | 
						|
        ip: 127.0.0.1
 | 
						|
        port: 7000
 | 
						|
        recvpass: "abcd"
 | 
						|
        sendpass: "abcd"
 | 
						|
 | 
						|
        # The full network name, used by plugins.
 | 
						|
        netname: "yournet"
 | 
						|
 | 
						|
        # Hostname we will use to connect to the remote server
 | 
						|
        hostname: "pylink.yournet"
 | 
						|
 | 
						|
        # SID - required for InspIRCd and TS6 based servers. This must be three characters long.
 | 
						|
        # The first char must be a digit [0-9], and the remaining two chars may be letters [A-Z] or digits.
 | 
						|
        sid: "0AL"
 | 
						|
 | 
						|
        # SID range - the range of SIDs PyLink is allowed to use to generate server IDs. On TS6,
 | 
						|
        # this should be a combination of digits, letters, and #'s. Each # denotes a range (0-9A-Z)
 | 
						|
        # of characters that can be used by PyLink. You will want to make sure no other servers
 | 
						|
        # are using this range. There must be at least one # in the entry.
 | 
						|
        sidrange: "8##"
 | 
						|
 | 
						|
        # Autojoin channels
 | 
						|
        channels: ["#pylink"]
 | 
						|
 | 
						|
        # Sets the protocol module to use - see the protocols/ folder for a list of valid values
 | 
						|
        # (omitting the .py extension).
 | 
						|
        protocol: "inspircd"
 | 
						|
 | 
						|
        # Sets autoconnect delay - comment this out or set the value below 1 to disable autoconnect entirely.
 | 
						|
        autoconnect: 5
 | 
						|
 | 
						|
        # Sets ping frequency (i.e. how long we should wait between sending pings to our uplink).
 | 
						|
        # When more than two consecutive pings are missed, PyLink will disconnect with a ping timeout.
 | 
						|
        # Defaults to 30 if not set.
 | 
						|
        pingfreq: 30
 | 
						|
 | 
						|
        # Separator character (used by relay)
 | 
						|
        separator: "/"
 | 
						|
 | 
						|
        # Sets the max nick length for the network. It is important this is set correctly, or
 | 
						|
        # PyLink might introduce a nick that is too long and cause netsplits!
 | 
						|
        maxnicklen: 30
 | 
						|
 | 
						|
        # Toggles SSL for this network. Defaults to false if not specified, and requires the
 | 
						|
        # ssl_certfile and ssl_keyfile options to work.
 | 
						|
        # ssl: true
 | 
						|
 | 
						|
        # ssl_certfile: pylink-cert.pem
 | 
						|
        # ssl_keyfile: pylink-key.pem
 | 
						|
 | 
						|
        # Optionally, you can set this option to verify the SSL certificate
 | 
						|
        # fingerprint (SHA1) of your uplink.
 | 
						|
        # ssl_fingerprint: "e0fee1adf795c84eec4735f039503eb18d9c35cc"
 | 
						|
 | 
						|
    ts6net:
 | 
						|
        ip: ::1
 | 
						|
 | 
						|
        # Determines whether IPv6 should be used for this connection.
 | 
						|
        ipv6: yes
 | 
						|
 | 
						|
        port: 7000
 | 
						|
        recvpass: "abcd"
 | 
						|
        sendpass: "abcd"
 | 
						|
        hostname: "pylink.example.com"
 | 
						|
        sid: "8PY"
 | 
						|
        netname: "some network"
 | 
						|
 | 
						|
        # Leave this as an empty list if you don't want to join any channels.
 | 
						|
        channels: []
 | 
						|
 | 
						|
        protocol: "ts6"
 | 
						|
        autoconnect: 5
 | 
						|
        pingfreq: 30
 | 
						|
        maxnicklen: 30
 | 
						|
 | 
						|
        # /'s in nicks are automatically converted to |'s for TS6 networks, since they
 | 
						|
        # don't allow "/" in nicks
 | 
						|
        separator: "|"
 | 
						|
 | 
						|
        # The following options are specific to TS6 servers:
 | 
						|
        # Toggles owner (+y), admin (+a), and halfop (+h) support for shadowircd/elemental-ircd.
 | 
						|
        # This defaults to off for the best compatibility.
 | 
						|
        use_owner: false
 | 
						|
        use_admin: false
 | 
						|
        use_halfop: false
 | 
						|
 | 
						|
        # Toggles support of shadowircd/elemental-ircd specific channel modes:
 | 
						|
        # +T (no notice), +u (hidden ban list), +E (no kicks), +J (blocks kickrejoin),
 | 
						|
        # +K (no repeat messages), +d (no nick changes), and user modes:
 | 
						|
        # +B (bot), +C (blocks CTCP), +D (deaf), +V (no invites), +I (hides channel list)
 | 
						|
        use_elemental_modes: false
 | 
						|
 | 
						|
# Plugins to load (omit the .py extension)
 | 
						|
plugins:
 | 
						|
    # Commands plugin: provides core commands such as logging in, shutting down PyLink, and
 | 
						|
    # various command help.
 | 
						|
    - commands
 | 
						|
 | 
						|
    # Networks plugin: allows you to manage (dis)connections to networks while PyLink is running.
 | 
						|
    - networks
 | 
						|
 | 
						|
    # Bots plugin: allows you to manipulate pseudo-clients (bots) on networks.
 | 
						|
    # - bots
 | 
						|
 | 
						|
    # Relay plugin: Janus-style server-side relay plugin.
 | 
						|
    # - relay
 | 
						|
 | 
						|
    # Fantasy plugin: allows you to trigger commands in channels by PyLink's nick or a
 | 
						|
    # configurable prefix character.
 | 
						|
    # - fantasy
 |